Propriétaire/groupe/autorisations correctes 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, donc j'espère que quelqu'un peut mettre celui-ci au repos pour moi? Mes autorisations sont foiré sur mes sites et je ne suis pas sûr de savoir comment les réparer sans simplement claquer un 777 récursif sur tout ce qui est manifestement incorrect.

Merci!

107
demandé sur Fo. 2010-01-04 23:08:48

7 réponses

C'est le moyen le plus restrictif et le plus sûr que j'ai trouvé, comme expliqué ici pour le répertoire hypothétique ~/my/web/root/ 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 peut accéder au contenu)
    • chmod go+x DIR (pour permettre aux "utilisateurs", y compris _www, d '"entrer" 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 d'autre que le propriétaire peut accéder contenu web)
  • chmod -R g+rx ~/my/web/root (tout le contenu web est maintenant lisible / exécutable / saisissable par _www)

Toutes les autres solutions laissent les fichiers ouverts à d'autres utilisateurs locaux (qui font partie du groupe" staff "et qui sont évidemment dans le groupe"o" /autres). Ces utilisateurs peuvent ensuite naviguer librement et accéder aux configurations DB, au code source ou à d'autres détails sensibles dans vos fichiers et scripts de configuration web si ceux-ci font partie de votre contenu. Si ce n'est pas un problème pour vous, alors allez avec l'un des plus simple des solutions.

177
répondu dkamins 2011-06-21 02:22:56

Si vous n'aimez vraiment pas le Terminal, voici la façon dont l'interface graphique de faire dkamins vous dit:

1) Allez dans votre répertoire principal de l'utilisateur (ludo serait la mienne) et de la Fichier menu, sélectionnez Get Info cmdj' dans l'inspecteur :

Obtenir la fenêtre D'Information section Partage et autorisations

2) alt/option cliquant sur le [+] signe ajoutez le _www groupe et de l'ensemble de la permission de lecture seule :

Obtenir des informations ajouter des utilisateurs et des groupes en surbrillance et World Wide Web Server en surbrillance

  • ainsi pensez (bonne pratique) à ne pas stocker d'informations personnelles à la racine de votre dossier personnel (& disque dur) !
  • vous pouvez ignorer cette étape si le groupe** everyone * * a l'autorisation * * en lecture seule, mais depuis AirDrop le dossier**/Public / Drop Box * * est surtout inutile...

3) affichez l'inspecteurGet Info de votre dossier user Sites et reproduisez l'étape 2 puis dans le sous-menu gear action choisissez Apply to enclosed Items... :

Le sous-menu Get Info action S'applique aux éléments joints... souligner

Voilà 3 étapes et L'interface graphique seule façon...

28
répondu llange 2014-03-01 15:30:03

Je sais que c'est un ancien post, mais pour quiconque passe à Mountain Lion (10.8) et rencontre des problèmes similaires, en ajoutant FollowSymLinks à votre {username}.le fichier conf (dans/etc / apache2 / users/) a fait l'affaire 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
répondu mjswensen 2012-12-27 21:11:48

Fil de 2 mois, mais mieux vaut tard que jamais! Sur 10.6, mon dossier 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 ACL pour autoriser les autorisations complètes au groupe Administrateurs. De cette façon, je peux toujours apporter des modifications à mon utilisateur administrateur sans avoir à m'authentifier en tant que root. Aussi, quand je veux permettre au serveur d'écrire dans un dossier, je peux simplement chmod à 775, laissant tout le monde autre que root:_www avec seulement autorisations de lecture / exécution (à l'exclusion des ACL que j'ai appliquées)

9
répondu Tim Mackey 2010-03-05 17:45:02

Sur mon système 10.6:

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

vhost.conf files:
 owner:root
 group:wheel
 permissions:644
4
répondu Steve Graham 2010-01-04 20:24:57

L'utilisateur propriétaire pour moi, c'est l'utilisateur admin et le groupe est _www et travaille avec des autorisations pour 775 pour les dir et les fichiers 664

0
répondu michalzuber 2011-06-17 11:40:44

Ouvrez d'abord le terminal, puis allez dans le répertoire du serveur web

cd /Library/WebServer/Documents

Puis tapez ceci et ce que vous ferez est que vous donnerez read et write la permission

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

Cela va sûrement fonctionner!

-2
répondu Sidharth kaushik 2017-10-26 16:07:32