nginx - 绑定() 到 0.0.0.0:80 失败 (98: 地址已在使用中)

3
我有一个反向代理配置了5个服务器,但自始至终它一直抱怨无法在我指定的端口上进行监听,因此服务器无法启动。
我尝试过以下几种方法:
  • 将配置拆分为多个文件,放置在 sites-available 中,并创建指向 sites-enabled 的符号链接。
  • 删除 listen 属性,让其回退到默认值。
  • 将端口更改为 ipv6only=on - 这引起了错误。
  • 将端口更改为 [::]:80
  • 更改端口以避免冲突,例如 808182 等。
使用 netstat 我可以看到没有任何内容在我需要的端口上运行,当我运行 nginx -t 时,成功输出表示语法正确且 nginx.conf 测试成功。
这是我的 nginx 输出:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:81 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:82 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:83 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:84 failed (98: Address already in use)

请问有人知道这是什么原因引起的吗?谢谢提前。

以下是我的服务器配置:

server {
        listen 80;
        server_name hac-staging-proxy.redant.cloud;

        location / {
                proxy_pass http://195.219.8.212/;
                proxy_set_header Host www.uat2prd.halfordsautocentres.com;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_buffering off;
        }
}

server {
        listen 81;
        server_name halfords-c1-staging-proxy.redant.cloud;

        location / {
                proxy_pass http://195.219.8.206/;
                proxy_set_header Host www.c1.uat2prd.halfordsautocentres.com;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_buffering off;
        }

}

server {
        listen 82;
        server_name halfords-c2-staging-proxy.redant.cloud;

        location / {
                proxy_pass http://195.219.8.206/;
                proxy_set_header Host www.c2.uat2prd.halfordsautocentres.com;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_buffering off;
        }

}

server {
        listen 83;
        server_name halfords-staging-proxy.redant.cloud;

        proxy_redirect http://www.uat2prd.halfords.com http://halfords-staging-proxy.redant.cloud;
        proxy_redirect https://www.uat2prd.halfords.com https://halfords-staging-proxy.redant.cloud;

        location / {
                add_header Set-Cookie Experiment=FH;
                resolver 127.0.0.1;
                proxy_pass http://www.uat2prd.halfords.com;
                # sub_filter_types *;
                sub_filter 'www.uat2prd.halfords.com' 'halfords-staging-proxy.redant.cloud';
                sub_filter 'www.c1.uat2prd.halfords.com' 'halfords-c1-staging-proxy.redant.cloud';
                sub_filter 'www.c2.uat2prd.halfords.com' 'halfords-c2-staging-proxy.redant.cloud';
                sub_filter_once off;
                proxy_set_header Set-Cookie Experiment=FH;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_buffering off;
        }
}

server {
        listen 84;
        server_name halfords-staging-proxy.redant.cloud2;

        proxy_redirect https://www.uat2prd.halfords.com https://halfords-staging-proxy.redant.cloud;
        proxy_redirect http://www.uat2prd.halfords.com http://halfords-staging-proxy.redant.cloud;

        ssl_certificate           /etc/nginx/domain.cert;
        ssl_certificate_key       /etc/nginx/domain.key;
        ssl_dhparam               /etc/ssl/certs/dhparam.pem;

        ssl on;
        ssl_session_cache  builtin:1000  shared:SSL:10m;
        ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers "INTENTIONALLY REMOVED"
        ssl_prefer_server_ciphers on;

        location / {
                add_header Set-Cookie Experiment=FH;
                resolver 127.0.0.1;
                proxy_pass https://www.uat2prd.halfords.com;
                # proxy_ssl_session_reuse off;
                # sub_filter_types *;
                sub_filter 'www.uat2prd.halfords.com' 'halfords-staging-proxy.redant.cloud';
                sub_filter 'www.c1.uat2prd.halfords.com' 'halfords-c1-staging-proxy.redant.cloud';
                sub_filter 'www.c2.uat2prd.halfords.com' 'halfords-c2-staging-proxy.redant.cloud';
                sub_filter_once off;
                proxy_set_header Set-Cookie Experiment=FH;
                proxy_set_header Host www.uat2prd.halfords.com;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_buffering off;
        }
}

你有没有机会解决这个问题? - pouyan021
1个回答

0

可能有一个nginx需要的端口,检查并打开它。这可能有效。或者仅扫描nginx目录中所有文件以查找端口98,它必须与nginx配置有关。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接