为什么nginx无法启动?

时间:2016-10-27 19:09:13

标签: nginx

然而,启动nginx失败,我的日志显示:

[emerg] 55#55: "server" directive is not allowed here in /etc/nginx/nginx.conf:1

我做错了什么?不确定它是否重要,但这是在一个docker容器内。

2 个答案:

答案 0 :(得分:1)

/etc/nginx/nginx.conf不是存储服务器设置的地方。此文件应包含有关将在其下运行的用户和其他全局设置的信息。通常它会包含这样的东西:

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
    worker_connections 768;
}

http {
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    server_tokens off;
    client_max_body_size 500M;

    include /etc/nginx/mime.types;    
    default_type application/octet-stream;

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    gzip on;
    gzip_disable "msie6";

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}

您应该将个人服务器设置放在/etc/nginx/sites-enabled/中。如您所见,该文件夹中的所有文件都包含在http文件的nginx.conf块中。

因此,存储您在/etc/nginx/sites-enabled/some-random-name.conf内发布的示例配置,并将nginx.conf文件恢复为我上面发布的配置,您应该很高兴。

答案 1 :(得分:0)

首先尝试调试

sudo nginx -t

如果通过但nginx重新启动失败,请尝试检查  您的nginx记录了缩小错误的范围

/var/log/nginx/error.log