Corretto proprietario / gruppo / permessi per i file / le cartelle del sito di Apache 2 su Mac OS X?

È difficile trovare risposte specifiche per Mac a questa domanda sul Web, quindi spero che qualcuno là fuori possa mettere questo per riposare per me? I miei permessi sono rovinati sui miei siti e non sono sicuro di come risolverli senza sbattere un 777 ricorsivo su tutto ciò che è ovviamente non corretto.

Grazie!

Questo è il modo più restrittivo e più sicuro che ho trovato, come spiegato qui per l’ipotetica directory ~/my/web/root/ per il tuo contenuto web:

  • Per ogni directory principale che conduce alla tua web root (ad es. ~/my , ~/my/web , ~/my/web/root ):
    • chmod go-rwx DIR (nessun altro a parte il proprietario può accedere al contenuto)
    • chmod go+x DIR (per consentire agli “utenti” incluso _www di “inserire” la dir)
  • sudo chgrp -R _www ~/my/web/root (tutto il contenuto web è ora gruppo _www)
  • chmod -R go-rwx ~/my/web/root (nessuno diverso dal proprietario può accedere al contenuto web)
  • chmod -R g+rx ~/my/web/root (tutto il contenuto web è ora leggibile / eseguibile / inseribile da _www)

Tutte le altre soluzioni lasciano i file aperti ad altri utenti locali (che fanno parte del gruppo “staff”, oltre ovviamente al gruppo “o” / others). Questi utenti possono quindi consultare e accedere liberamente alle configurazioni DB, al codice sorgente o ad altri dettagli sensibili nei propri file di configurazione Web e script se tali contenuti fanno parte del contenuto. Se questo non è un problema per te, allora con tutti i mezzi andare con una delle soluzioni più semplici.

Se davvero non ti piace il Terminale, ecco il modo in cui la GUI per fare dkamins ti dice:

1) Vai alla tua home directory dell’utente ( Ludo sarebbe mio) e dal menu File scegli Ottieni info cmd I nell’ispettore:

Ottieni informazioni sulla sezione Condivisione e permessi

2) Per alt / opzione facendo clic sul segno [+] aggiungi il gruppo _www e imposta il suo permesso di sola lettura :

Ottieni informazioni aggiungi Utenti e gruppi evidenziati e Server Web evidenziato

  • Considera quindi (buona pratica) di non memorizzare informazioni personali alla radice della cartella home dell’utente (& disco rigido)!
  • Puoi saltare questo passaggio se il gruppo ** tutti ** ha il permesso di sola lettura ** ma poiché la cartella AirDrop ** / Public / Drop Box ** è quasi inutile …

3) Mostra la finestra di dialogo Ottieni informazioni della cartella Siti dell’utente e riproduci il passaggio 2, quindi dal sottomenu delle azioni di ridimensionamento scegli Applica agli elementi inclusi … :

Ottieni il sottomenu di azione Info Applica agli elementi inclusi ... evidenziato

Voilà 3 passi e la GUI solo modo …

So che questo è un vecchio post, ma per chiunque abbia eseguito l’aggiornamento a Mountain Lion (10.8) e riscontrato problemi simili, l’aggiunta di FollowSymLinks al tuo file {username} .conf (in / etc / apache2 / users /) ha fatto il trucco per me. Quindi il file ha il seguente aspetto:

  Options Indexes MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all  

Thread di 2 mesi, ma meglio tardi che mai! Il 10.6, ho la mia cartella documenti webserver impostata su:

 owner:root group:_www permission:755 

_www è l’utente che esegue apache in Mac OS X. Ho quindi aggiunto un ACL per consentire autorizzazioni complete al gruppo Administrators. In questo modo, posso ancora apportare modifiche con il mio utente amministratore senza dover autenticare come root. Inoltre, quando voglio consentire al web server di scrivere in una cartella, posso semplicemente chmod a 775, lasciando tutti tranne root: _www con solo autorizzazioni di lettura / esecuzione (escludendo qualsiasi ACL che ho applicato)

Sul mio sistema 10.6:

 vhosts folder: owner:root group:wheel permissions:755 vhost.conf files: owner:root group:wheel permissions:644 

Il proprietario dell’utente per me è l’utente admin e il gruppo è _www e funziona con le autorizzazioni impostate su 775 per dir e per i file 664

Apri prima il terminale e poi vai alla directory del server web

 cd /Library/WebServer/Documents 

e poi digita questo e quello che farai è che darai il permesso di read e write

 sudo chmod -R o+w /Library/WebServer/Documents 

Questo funzionerà sicuramente!