nginx:nginx.service的作业失败,因为控制进程退出并显示错误代码

时间:2017-01-23 11:41:42

标签: nginx

已解决(请参阅下面的回答)

当我在网站可用和网站启用时添加新的nginx配置 edu.conf 时,nginx刚刚死亡。

我无法重启服务,所有网站都无法使用。

当我在任何其他我的nginx配置中键入sudo nginx -t -c /etc/nginx/sites-available/edu.conf或相同的命令时,它会抛出错误:

nginx: [emerg] "upstream" directive is not allowed here in /etc/nginx/sites-available/edu.conf:1
nginx: configuration file /etc/nginx/sites-available/edu.conf test failed

我已经拥有与 edu.conf 相同的nginx配置,我刚刚更改了根文件夹和服务器名称。

如果我检查任何以前完全正常的文件的语法错误,它会在所有这些文件的第一行引发错误。甚至是默认的。

sw@asd:/etc/nginx/sites-available$ sudo nginx -t -c /etc/nginx/sites-available/magento2.conf
nginx: [emerg] "upstream" directive is not allowed here in /etc/nginx/sites-available/magento2.conf:1
nginx: configuration file /etc/nginx/sites-available/magento2.conf test failed
sw@asd:/etc/nginx/sites-available$ sudo nginx -t -c /etc/nginx/sites-available/default
nginx: [emerg] "server" directive is not allowed here in /etc/nginx/sites-available/default:16
nginx: configuration file /etc/nginx/sites-available/default test failed

这是我添加的 edu.conf

upstream fastcgi_backend {
           server unix:/var/run/php/php7.0-fpm.sock;        
        #  Or TCP
        #  server  127.0.0.1:9000;
}
server {
        listen 80;
        server_name edu.dev;
        set $MAGE_ROOT /var/www/html/mg;
        set $MAGE_MODE developer;
        include /var/www/html/mg/nginx.conf.sample;
}

1 个答案:

答案 0 :(得分:0)

实际配置正常,问题出在Magento 2配置中。我必须在位于Magento 2根目录的nginx.conf.sample中将root $MAGE_ROOT/pub;更改为root $MAGE_ROOT;。或者我必须输入类似于此edu.dev/setup而不是edu.dev的网址。