无法更改NGINX端口

时间:2018-01-21 03:53:05

标签: nginx port listen

我遇到的问题是我无法远程访问,除非我使用端口80并且我想使用其他端口。

这是我正在使用的NGINX配置。这将适用于端口80.但是,如果我改变

listen       80;

listen       6000;

从本地计算机外部访问时不起作用。

换句话说,机器上的卷曲127.0.0.1:6000有效。但是尝试使用184.169.100.100:6000从外部访问不起作用。 (假装这是我的公共IP地址。)它在Chrome中为我提供了“无法访问网站”错误。

我已检查安全设置以确保端口6000已打开。这是一个AWS EC2实例。

将事情放在上下文中的可选注释:总的来说,我要做的是在一台机器上设置两个不同的服务器,每个服务器可以从不同的端口访问,每个服务器都运行它自己的一组python worker。作为第一步,我只想确保我可以更改访问服务器的端口,但是,我甚至无法做到这一点,仍然可以从外部访问它。

ubuntu@ip-172-31-9-113:/etc/nginx/conf.d$ cat flask.conf
upstream gunicorn_server {

  server localhost:8080 fail_timeout=0;
}

    server {
        listen       80;
        server_name  184.169.100.100;

        root /home/ubuntu/www;
        client_max_body_size 4G;
        keepalive_timeout 5;
        proxy_read_timeout 900;

        location / {
        try_files $uri @app;
        }

        location @app {
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_set_header X-Real-IP     $remote_addr;
         proxy_set_header Host $http_host;
         proxy_redirect off;
        # pass to the upstream gunicorn server mentioned above
         proxy_pass http://gunicorn_server;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
   }

感谢任何帮助。

4 个答案:

答案 0 :(得分:0)

回答我自己的问题: 我尝试使用端口6001而不是6000,然后它工作。我可以从外面访问它。我不能说出原因,但对于我的具体案例,一定存在6000问题。

答案 1 :(得分:0)

6000端口是否打开? 签入入站端口规则。 然后尝试点击sudo ufw allow 6000并检查是否还可以使用6000。

(此问题很旧,但仍在回答,因为如果有人遇到相同的问题,此答案可能会对他们有帮助)

答案 2 :(得分:0)

尝试使用这个命令:

firewall-cmd --zone=public --add-port=6000/tcp --permanent

答案 3 :(得分:0)

这发生在防火墙上。

Ubuntu: 如果您的 ufw 已启用:

sudo ufw allow 6000

在 centos 中禁用 selinux(不推荐。搜索 selinux 配置以获取允许端口)