我正在使用nginx,尝试在端口80(或root)上加载网站会在尝试连接一段时间后出现502错误的网关错误。
当我输入:netstat -ltnp | grep :80
时,我会得到以下结果。
这是我的nginx.conf:
#user nginx;
# The number of worker processes is changed automatically by CustomBuild, according to the number of CPU cores, if it's set to "1"
worker_processes 4;
pid /var/run/nginx.pid;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
events {
include /etc/nginx/nginx-events.conf;
}
http {
include /etc/nginx/mime.types;
# For user configurations not maintained by DirectAdmin. Empty by default.
include /etc/nginx/nginx-includes.conf;
# Supplemental configuration
#include /etc/nginx/nginx-modsecurity-enable.conf;
include /etc/nginx/nginx-defaults.conf;
include /etc/nginx/nginx-gzip.conf;
include /etc/nginx/nginx-proxy.conf;
include /etc/nginx/directadmin-ips.conf;
include /etc/nginx/directadmin-settings.conf;
include /etc/nginx/nginx-vhosts.conf;
include /etc/nginx/directadmin-vhosts.conf;
server {
listen 80;
root /var/www/html;
index index.html index.htm index.php;
}
}
注意:除80之外的任何其他端口都可以正常工作。显然8080和8081被采用,但除此之外,任何其他端口(例如8000)工作正常。
到目前为止我尝试过的事情: 这个solution,并使用proxy。
可能导致这种情况的原因是什么?
答案 0 :(得分:0)
好吧,所以我开始评论所有的包含,并且知道下面的行是定义另一个端口80 服务器:
include /etc/nginx/directadmin-vhosts.conf;
因此我操纵了这个文件(directadmin-vhosts.conf
),而不是在nginx.conf
中定义我的服务器,事情就好了。
请注意,由于某种原因,此命令未显示所有已执行的端口80:
netstat -ltnp | grep :80
因此我使用了下面的命令,而当我意识到nginx还在其他地方使用端口80时。
netstat -ltnp | grep :*
我认为Noob错误,但我希望这个答案可以帮助那些正在努力解决同样问题的人。