C'est le moyen le plus restrictif et le plus sûr que j'ai trouvé, comme expliqué ici pour le ~/my/web/root/
répertoire hypothétique de votre contenu Web:
- Pour chaque répertoire parent conduisant à la racine de votre web (par exemple
~/my
, ~/my/web
, ~/my/web/root
):
chmod go-rwx DIR
(personne d'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 d'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 / saisissable par _www)
Toutes les autres solutions laissent les fichiers ouverts à d'autres utilisateurs locaux (qui font partie du groupe "staff" et sont évidemment dans le groupe "o" / others). Ces utilisateurs peuvent ensuite parcourir et accéder librement aux configurations de base de données, au code source ou à d'autres détails sensibles dans vos fichiers de configuration Web et vos scripts si ceux-ci font partie de votre contenu. Si ce n'est pas un problème pour vous, optez certainement pour l'une des solutions les plus simples.
chmod go+rx DIR
au niveau du répertoire / Users / username avant que ls arrête de lancer une erreur d'autorisation. Se demander pourquoi?chmod -R g+rwx ~/my/web/root
. Des objections ou une meilleure façon de faire cela @dkamins?Si vous n'aimez vraiment pas le terminal, voici la manière graphique de faire dkamins qui vous dit:
1) Allez dans votre répertoire personnel ( ludo serait le mien) et dans le menu Fichier , choisissez Obtenir des informations cmdI dans l'inspecteur:
2) En alt/optioncliquant sur le signe [+], ajoutez le groupe _www et définissez son autorisation en lecture seule :
3) Affichez l' inspecteur Obtenir des informations de votre dossier Sites utilisateur et reproduisez l'étape 2, puis dans le sous-menu d'action de l'engrenage, choisissez Appliquer aux éléments inclus ... :
Voilà 3 étapes et le seul moyen GUI ...
la source
ALT + [+]
truc. Merci.Je sais que c'est un ancien post, mais pour quiconque passe à Mountain Lion (10.8) et rencontre des problèmes similaires, l'ajout
FollowSymLinks
à votre fichier {username} .conf (dans / etc / apache2 / users /) a fait l'affaire pour moi. Donc, le fichier ressemble à ceci:la source
Fil de 2 mois, mais mieux vaut tard que jamais! Sur 10.6, mon dossier de documents de serveur Web est défini sur:
_www est l'utilisateur qui exécute apache sous Mac OS X. J'ai ensuite ajouté une ACL pour autoriser des autorisations complètes au groupe Administrateurs. De cette façon, je peux toujours apporter des modifications avec mon utilisateur administrateur sans avoir à m'authentifier en tant que root. De plus, lorsque je veux autoriser le serveur Web à écrire dans un dossier, je peux simplement chmod à 775, laissant tout le monde autre que root: _www avec uniquement des autorisations de lecture / exécution (à l'exclusion des ACL que j'ai appliquées)
la source
Sur mon système 10.6:
la source
Le propriétaire de l'utilisateur pour moi est l'utilisateur admin et le groupe est _www et fonctionne avec des autorisations définies sur 775 pour le répertoire et pour les fichiers 664
la source
Mise à jour de Catalina / autorisations de bureau
Je rencontre cela une fois par an sur macOS. J'utilise généralement apache2 pour héberger un dossier sur mon bureau.
Si vous essayez de donner accès au
desktop
dossier, vous devez suivre ceci pour permettre à httpd d'avoir accès à tous les dossiers: https://apple.stackexchange.com/a/373139/353465la source
Ouvrez d'abord le terminal, puis accédez au répertoire du serveur Web
puis tapez ceci et ce que vous ferez est que vous donnerez
read
et lawrite
permissionCela fonctionnera sûrement!
la source