Nginx没有运行,没有错误信息

我正在尝试启动我的nginx服务器。 当我input“$> /etc/init.d/nginx start”,我有一个消息出现“Starting nginx:”,然后没有任何反应。 没有错误信息,当我检查nginx的状态时,我发现它没有运行。

这是我的/etc/nginx/nginx.conf文件:

worker_processes 4; daemon off; error_log /home/vincent/tmp/nginx.log; pid /home/vincent/tmp/nginx.pid; events { worker_connections 1024; } http { default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /home/vincent/tmp/access.log main; sendfile on; keepalive_timeout 65; include /etc/nginx/site-enabled/*; 

}

这里是我的/ etc / nginx / sites-available / default文件:

 server { listen 80; server_name technical-test.neo9.lan; access_log /var/log/nginx/technical-test.neo9.lan.log main; set $home /home/vincent; location / { alias $home/neo9/web/app/; index index.html; } location /api/ { rewrite ^/api/(.*)$ /$1 break; proxy_pass http://localhost:1234; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } 

首先,总是sudo nginx -t来validation你的configuration文件是否好。

我遇到了同样的问题。 我有这个问题的原因是双重的。 首先,我不小心将日志文件复制到启用了站点的文件夹中。 我删除了日志文件,并确保所有启用网站的文件都是正确的nginx站点configuration。 我还注意到我的两个虚拟主机正在侦听同一个域。 所以我确保每个虚拟主机都有唯一的域名。

sudo service nginx restart

然后它的工作。

您应该检查/var/log/nginx/error.log错误。

在我的情况下,我没有为ipv6添加端口。 你也应该这样做(如果你在80以外的端口上运行nginx): listen [::]:8000 default_server ipv6only=on;

在你的/etc/nginx/nginx.conf文件中有:

 include /etc/nginx/site-enabled/*; 

可能你正在使用的path是:

 /etc/nginx/sites-enabled/default 

注意网站上的缺失。

检查nginx.conf文件中的守护程序选项。 它必须是ON。 或者你可以简单地从configuration文件中撕掉这行。 这个选项在http://nginx.org/en/docs/ngx_core_module.html#daemon

1.通过运行上述命令检查您的configuration文件: sudo nginx -t

2.检查端口冲突。 比如,如果apache2ps waux | grep apache2 )或者其他服务使用与nginxconfiguration相同的端口(比如端口80),服务将无法启动,并且会自动失败(我的朋友的堂兄有这个问题…)

一种情况你检查nginx是否在系统默认的80号码端口上,检查你是否有任何类似apache的服务器,或者系统上有什么东西存在,阻止80号码端口发生问题。

1,用这种方法改变nginx的端口号,

sudo vim / etc / nginx / sites-available / default

改变80到81或任何东西,

  1. 检查一切正常,

sudo nginx -t

  1. 重新启动服务器

sudo服务nginx启动

  1. 检查nginx的状态:

sudo服务nginx状态

希望能工作

我有我的实例完全相同的问题。 我的问题是,我忘记了允许端口80访问服务器。 也许这也是你的问题?

检查您的WHM并确保该端口对您的站点的IP地址是开放的,

对于它的价值:在编辑nginx.conf文件后,我遇到了同样的问题。 我试图通过命令sudo nginx restart和其他各种命令尝试重新启动它。 他们没有任何产出。 命令sudo nginx -t检查configuration文件输出sudo: nginx: command not found ,这是令人费解的。 我开始认为这条路有问题。

最后,我以root身份loginsudo su )并命令sudo nginx restart 。 现在,该命令显示了有关configuration文件的错误消息。 修复后,它成功地重新启动。