web-dev-qa-db-fra.com

Corrigez les droits de propriétaire / groupe / autorisations pour les fichiers / dossiers du site Apache 2 sous Mac OS X?

Il est difficile de trouver des réponses spécifiques à Mac à cette question sur le Web. J'espère donc que quelqu'un pourra y mettre fin. Mes autorisations sont gâchées sur mes sites et je ne sais pas comment les réparer sans simplement claquer un 777 récursif sur tout ce qui est manifestement incorrect.

Merci!

110
Fo.

C’est le moyen le plus restrictif et le plus sûr que j’ai trouvé, comme expliqué ici pour hypothétique ~/my/web/root/ répertoire pour votre contenu Web:

  • Pour chaque répertoire parent menant à votre racine Web (par exemple, ~/my, ~/my/web, ~/my/web/root):
    • chmod go-rwx DIR _ (personne autre que le propriétaire ne peut accéder au contenu)
    • chmod go+x DIR _ (pour permettre aux "utilisateurs", y compris _www, de "saisir" le répertoire)
  • Sudo chgrp -R _www ~/my/web/root _ (tout le contenu Web est maintenant groupe _www)
  • chmod -R go-rwx ~/my/web/root _ (personne autre que le propriétaire ne peut accéder au contenu Web)
  • chmod -R g+rx ~/my/web/root _ (tout le contenu Web est maintenant lisible/exécutable/accessible par _www)

Toutes les autres solutions laissent les fichiers ouverts aux autres utilisateurs locaux (qui font partie du groupe "personnel" et qui appartiennent évidemment au groupe "o"/autres). Ces utilisateurs peuvent ensuite parcourir et accéder librement aux configurations de la base de données, au code source ou à d'autres informations confidentielles contenues dans vos fichiers et scripts de configuration Web, si ceux-ci font partie de votre contenu. Si cela ne vous pose pas problème, optez pour l'une des solutions les plus simples.

181
dkamins

Si vous n'aimez vraiment pas le terminal, voici la façon de faire avec dkamins avec une interface graphique:

1) Allez dans le répertoire personnel de votre utilisateur ( ludo serait le mien) et dans le menu Fichier, choisissez Obtenir Info cmdI dans l'inspecteur:

Get Info window Sharing & Permissions section

2) par alt/option en cliquant sur le signe [+], ajoutez le groupe _ www et attribuez-lui l'autorisation à lecture seule:

Get Info add Users & Groups highlighted and World Wide Web Server highlighted

  • Envisagez donc (bonne pratique) de ne pas stocker d’informations personnelles à la racine du dossier personnel de votre utilisateur (& disque dur)!
  • Vous pouvez ignorer cette étape si le groupe ** tout le monde ** a l'autorisation ** en lecture seule **, mais depuis AirDrop, le dossier **/Public/Drop Box ** est pratiquement inutile ...

3) Affichez le dossier Obtenir des informations de votre dossier d’utilisateur Sites et reproduisez l’étape 2 puis, dans le sous-menu Action par engrenage, choisissez s'applique aux éléments inclus ...:

Get Info action sub-menu Apply to enclosed Items... highlighted

Voilà 3 étapes et la seule interface graphique ...

29
llange

Je sais que c’est un ancien message, mais pour tous ceux qui passent à Mountain Lion (10.8) et rencontrent des problèmes similaires, ajouter FollowSymLinks à votre fichier {username} .conf (dans/etc/Apache2/users /) truc pour moi. Donc, le fichier ressemble à ceci:

<Directory "/Users/username/Sites/">
  Options Indexes MultiViews FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>
12
mjswensen

Fil de 2 mois, mais mieux vaut tard que jamais! Sous 10.6, le dossier de documents du serveur Web est défini sur:

owner:root
group:_www
permission:755

_www est l'utilisateur qui exécute Apache sous Mac OS X. J'ai ensuite ajouté une liste de contrôle d'accès pour autoriser les autorisations complètes au groupe des administrateurs. De cette façon, je peux toujours apporter des modifications à mon utilisateur administrateur sans devoir m'authentifier en tant que root. De plus, lorsque je veux autoriser le serveur Web à écrire dans un dossier, je peux simplement chmod jusqu'à 775, laissant tout le monde autre que root: _www avec uniquement des autorisations de lecture/exécution (à l'exception des ACL que j'ai appliquées).

9
Tim Mackey

Sur mon système 10.6:

vhosts folder:
 owner:root
 group:wheel
 permissions:755

vhost.conf files:
 owner:root
 group:wheel
 permissions:644
4
Steve Graham

L'utilisateur propriétaire pour moi est l'administrateur et le groupe est _www. Les autorisations sont définies sur 775 pour les répertoires et les fichiers.

0
michalzuber