II)
Si je remplace fastcgi_param PATH_TRANSLATED **$document_root$fastcgi_script_name;**
par fastcgi_param PATH_TRANSLATED **$document_root$fastcgi_path_info;**
tel qu’il est indiqué dans ce post
J’ai carrément un access denied
Avec dans les logs nginx [error] 80822#0: *1 FastCGI sent in stderr: "Access to the script '/htdocs/applications/dolibarr-20.0.0/htdocs' has been denied (see security.limit_extensions)" while reading response header from upstream
Pourtant j’ai bien désactivé les extensions dans mon php_fpm.conf security.limit_extensions =
Quelle configuration avec vous ?
De mon point de vue la configuration du wiki ne fonctionne pas.
étant donné que la configuration du wiki contient une ligne pour corriger une faille de 2016 qui a été corrigée en 2016, je dirais que la configuration date un peu.
Une de mes configs qui fonctionne avec compression des réponses API activée
Je ne comprends pas pourquoi tu fais cela car tu ne remanipules pas ta variable $path_info
Es-tu sûr que cette manipulation est vraiment nécéssaire ?
Je remarque que par rapport au Wiki et @Beers tu n’as pas
ça c’est parce qu’il y a un try_files dans son block, c’est un vieux bug « connu » (enfin c’est plutôt du au fonctionnement de try_files, c’est pas réellement un bug) de nginx
voir ici pour les détails https://trac.nginx.org/nginx/ticket/321
Oui tu as tout à fait raison, c’est une variable de PHP et dans le cas de NGinx la configuration PHP est déportée sur php_fpm.
Donc il n’était pas évident de distinguer les deux.
La recommandation en termes de sécurité est de positionné cette valeur à 0 et jusqu’à présent Dolibarr fonctionnait bien avec cette valeur à 0.
Je la positionne systématiquement à 0 dans toutes les applications que j’utilise sauf si j’ai connaissance qu’elle doit être à 1.
Idéalement, ce point devrait être précisé dans le Wiki.
Oui si on veut, mais cela ne permet d’exploiter une faille que si on est permissif sur le reste de la config et d’exécuter par exemple un fichier vilain.png qui contiendrait du code php.
Il y a ça pour régler le problème, la config par défaut permet d’executer du .php et du .phar