Node.js Nginx Phusion乘客:“;乘客日志文件;指令是不允许的

Node.js Nginx Phusion乘客:“;乘客日志文件;指令是不允许的,node.js,nginx,passenger,Node.js,Nginx,Passenger,我目前正在运行:nginx/1.12.2和Phusion Passenger 5.1.12 每当我尝试使用“乘客日志文件”、“乘客默认用户”或“乘客默认组”时,都会出现以下错误 nginx:[emerg]/etc/nginx/sites enabled/test:11中此处不允许使用“乘客日志文件”指令 我的站点启用文件如下所示: server { listen 80; server_name example.com; root /home/test/api;

我目前正在运行:nginx/1.12.2和Phusion Passenger 5.1.12

每当我尝试使用“乘客日志文件”、“乘客默认用户”或“乘客默认组”时,都会出现以下错误

nginx:[emerg]/etc/nginx/sites enabled/test:11中此处不允许使用“乘客日志文件”指令

我的站点启用文件如下所示:

server {
    listen 80;
    server_name example.com;

    root /home/test/api;

    passenger_app_root /home/test/api/dist;
    passenger_enabled on;
    passenger_app_type node;
    passenger_startup_file app.js;
    passenger_log_file /var/log/test/access.log;
}
如果我删除乘客日志文件,一切正常。我在这里遗漏了什么?

passenger\u log\u文件
仅在
http
上下文级别可用。在您提供的示例中,它位于
服务器
上下文中


passenger\u default\u user
passenger\u default\u group
都可以在
服务器
上下文中使用,这很容易混淆。

我也有同样的问题。我认为您的案例的正确选项是乘客应用程序日志文件,它允许为每个应用程序定义日志文件。不幸的是,这是一个级别选项。另一方面,如果您将乘客应用程序日志文件上移一级,则应将所有乘客应用程序日志文件更改为默认文件

    passenger_log_file /var/www/vhosts/system/xxx.pasi-consulting.com/logs/proxy_error_log;

    server {
    listen 137.74.195.27:443 ssl http2;

    server_name www.pasi-consulting.com;
    server_name www.xxx.pasi-consulting.com;

    }

确保日志目录正确设置了对nginx的权限。@julian salas日志目录由正确的用户拥有。甚至尝试将目录更改为777,将日志文件更改为666,但仍然得到相同的错误。