Nginx问题:页面显示IP地址而不是服务器名称

时间:2020-01-05 01:21:40

标签: nginx

我已经在Ubuntu Server 18.04上安装了Nginx,并试图使其与Odoo一起使用。

步骤:

  • 为我想要的“子域”注册一个指向我服务器的A记录;

(在浏览器上测试了mysubdomain.com,它可以正确重定向到我的服务器-我可以看到服务器IP地址和默认的nginx欢迎页面)

  • 使用以下设置设置“默认站点”:

    server {
    
        listen 80 default_server;
        listen [::]:80 default_server;
    
        root /var/www/html;
    
        #Add index.php to the list if you are using PHP
        index index.html index.htm index.nginx-debian.html;
    
        server_name mysubdomain.mydomain.com;
    
        location / {
                proxy_pass http://localhost:8069;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Conection 'upgrade';
                proxy_set_header Host $host;
                proxy_cache_bypass $http_upgrade;
                }
    }
    

重新启动Nginx服务并在浏览器上输入“ mysubdomain.mydomain.com”后,一切运行良好,但是浏览器显示了我的IP,而不是在网址上保留了“ mysubdomain”。

有什么问题吗?

编辑于2020年1月5日

我重新创建了VPN,并将子域的A记录更改为新IP,然后重新安装了Nginx。

这次一切都按预期进行,我相信问题与域名托管服务有关。也许我不得不等待一段时间才能允许子域名传播或其他。

1 个答案:

答案 0 :(得分:0)

通常在代理传递过程中缺少主机标头时发生。您可以添加proxy_add_header Host "mysubdomain.mydomain.com"吗?

此外,作为良好的卫生习惯,应该在proxy_set_headers之后使用proxy_pass指令。

相关问题