Nginx - afficher les erreurs que dans un répertoire spécifique

Bonjour,
j’ai un serveur debian 9 à jour managé via yunohost
Nginx comme serveur web

La conf de ce répertoire virtuelle est

     rewrite ^/site$ /site/ permanent;
    location /site/ {

        # Path to source
        alias /var/www/my_webapp__3/www/;

    # Force usage of https
    if ($scheme = http) {
        rewrite ^ https://$server_name$request_uri? permanent;
     }

    # Default indexes and catch-all
    index index.html index.php;
    try_files $uri $uri/ /site/index.php?$args;

    # Prevent useless logs
    location = /site/favicon.ico {
        log_not_found off;
        access_log off;
    }
    location = /site/robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    # Deny access to hidden files and directories
    location ~ ^/site/(.+/|)\.(?!well-known\/) {
        deny all;
    }

    # Execute and serve PHP files
    location ~ [^/]\.php(/|$) {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
        fastcgi_pass unix:/var/run/php/php7.0-fpm-my_webapp__3.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param REMOTE_USER $remote_user;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param SCRIPT_FILENAME $request_filename;
    }
### End of PHP configuration part

    # Include SSOWAT user panel.
    include conf.d/yunohost_panel.conf.inc;
}

Fonctionne très bien.
Je voudrais afficher les erreurs php mais que dans un répertoire spécifique de ce virtual host(pas dans les autres)

Avec apache on peut le faire avec un .htaccess mais avec nginx ?

A priori c’est possible mais je ne sais pas trop comment ? Des pistes seraient les bienvenues ?

Bonjour,

Cela devrait être possible avec une directive du type :

location /site/dossier/particulier {
  error_log /emplacement/des/logs/error.log
}

La doc : https://docs.nginx.com/nginx/admin-guide/monitoring/logging/

Bonjour et merci
OK donc les erreurs incrémenteront un fichier de log dans un fichier.

Apparaitront elles également à l’écran (c’est ce que je recherche) (display_errors)

Je suis de suite la doc recommandée :wink:

Cela ne veut rien dire…

Les erreurs qui se produisent dans le dossier indiqué par location seront envoyées dans le fichier spécifié par error_log.

Si tu veut dire par là : afficher les erreurs dans le navigateur, c’est un paramètre de configuration PHP et non Nginx.

Tout à fait ça ne veut rien dire :wink:
OK donc les erreurs incrémenteront un fichier de log

Et oui c’est une valeur particulière du phi.ini que je veux appliquer à un seul dossier du répertoire virtuel.

Ce serait peut être plus simple de créer un rep virtuel à coté, me diras tu …

À mettre dans un fichier .user.ini alors. Ou en utilisant set $php_value dans la configuration de nginx.
https://www.php.net/manual/fr/install.fpm.configuration.php

Un grand merci, le fichier .user.ini fonctionnel nickel :wink: