【问题标题】:nginx error "server" directive is not allowed herenginx 错误“服务器”指令在这里不允许
【发布时间】:2019-05-30 10:47:51
【问题描述】:

nginx -t 导致以下错误:

nginx: [emerg] "server" 指令在 /etc/nginx/sites-enabled/default:8 中是不允许的

下面是/ etc / nginx / sites-available / default文件中的代码内容:

server {
        listen 27016;
        server_name 52.79.70.237;
        location / {
                proxy_pass http://127.0.0.1:27016;
}

server {
        listen 80 default_server;
        server_name 52.79.70.237;
        location / {
                proxy_redirect off;
                proxy_pass http://127.0.0.1:3001;
        }
}

如果您能告诉我错误发生的原因,我将不胜感激。

【问题讨论】:

  • 您在第一个 location 块之后缺少关闭 }

标签: nginx


【解决方案1】:

你可以重启nginx。如果不想重启,可以通过kill进程来重启。

netstat -tnlp

出现下表。检查最左边的进程名称旁边的数字。

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:27017           0.0.0.0:*               LISTEN      1220/mongod
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      14263/mysqld
tcp6       0      0 :::80                   :::*                    LISTEN      2495/nginx: master

输入以下命令。

kill -2 2495

这将强制进程终止。现在再次输入 nginx,nginx 就会运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    • 2015-04-18
    相关资源
    最近更新 更多