Nginx ne suit pas de liens symboliques
j'ai installé nginx sur Ubuntu 12.04. Cependant, nginx ne semble pas suivre les liens symboliques. Je comprends qu'il y est une config changement nécessaire pour cela, mais je ne suis pas en mesure de trouver où faire le changement. Toute aide appréciée.
3 réponses
regardez l'option de configuration suivante de nginx docs:
Syntaxe:
disable_symlinks off; disable_symlinks on | if_not_owner [from=part];
Default: disabl_symlinks off;
Contexte: http, serveur, site
cette directive est apparue dans la version 1.1.15.
Dans mon cas nginx
était déjà configuré pour suivre les liens symboliques. Mais le lien symbolique pointait vers mon répertoire personnel et nginx
avait pas la permission d'accéder à mes fichiers.
Dans cet exemple, le lien est: /usr/share/nginx/www/mylink
-> /home/myuser/html
cd /usr/share/nginx/www
mkdir -p /home/myuser/html
sudo ln -sv /home/myuser/html mylink
«mylink» -> «/home/u/html»
Donner à la lecture (r
) et d'exécution (x
) autorisations à l'aide de chmod
comme suit:
chmod +rx /home/myuser
chmod +rx -R /home/myuser/html
la permission D'écriture peut aussi être donnée si les scripts ont besoin d'écrire données:
chmod +w -R /home/myuser/html/myPHP
Pas besoin de redémarrer ngnix
, appuyez sur [CTRL+F5]
dans votre navigateur.
Attention: il n'est pas recommandé de créer des liens symboliques pointant votre espace d'origine car une erreur sur l'accès en lecture/écriture ou d'autres liens symboliques peuvent causer des trous sécurisés dans vos données numériques!
Référence:Arch wiki
si la réponse d'olibre n'aide pas à éditer le fichier /etc/nginx/sites-available/default et ajouter cette ligne où vous avez spécifié votre répertoire racine du serveur.
autoindex on;
enregistrer le fichier et redémarrer le serveur
/etc/init.d/nginx restart