En programmation, et surtout sous Linux où il faut être très très rigoureux, une simple petite erreur de rien du tout peut vous gâcher la vie. Enfin gâcher quelques heures de recherches pour un minuscule détail.
Au boulot, je voulais me remonter un environnement de dev, je suis le readme et pas moyen, j'ai un gros Permission denied. Je decide donc je réaliser une copie des fichiers de configuration Nginx, php-fpm. Et toujours l'erreur. Je change les droits sur divers répertoires. Je pousse même le vise à faire un rsync -a (copie avec les même droit que l'original). Rien, rien ça ne veut pas fonctionner. Je me retrouve toujours avec l'erreur pénible du 13: Permission denied.
Je fini par inspecter les répertoires depuis la racine du disque (monté). et je trouve la solution. Comme souvent un problème de droits particulièrement vicieux !!
voici le message dans la log nginx (tail -f /var/log/nginx/error.log si vous ne l'avez pas changé de place )
[crit] 10053#0: *1 stat() "/space/www/geekmps/data/htdocs/web/divers" failed (13: Permission denied), client: 127.0.0.1, server: geekmps.local, request: "GET /divers HTTP/1.1", host: "geekmps.local"
Il faut donc que tous les répertoires de /space/www/geekmps/data/htdocs/web/divers soit en exécutable !!! Dans mon cas il s'agissait du point de montage space qui était passé en 700 (drwx------). Donc le user www-data (qui sert généralement à NGinx) n'était pas autoriser à aller voir dedans ...
drwxr-xr-x 9 jbaptiste jbaptiste 4096 juil. 21 17:14 space
Dans mon cas un chmod 755 sur space/ à suffit (je n'ai pas essayé le chmod 711 sur space)
Ensuite j'ai parcouru l'arborescence à la recherche des répertoires qui n'avait pas leur petit x
Comments powered by CComment