Nginx子域配置错误

时间:2017-08-30 16:28:52

标签: nginx nginx-reverse-proxy

我想将我的Nginx版本1.10.2配置为在CentOS 7操作系统中托管的反向代理。我有几个应用程序在同一个WildFly 10服务器上运行。这些应用程序可在http://213.xxx.xxx.xxx/app1http://213.xxx.xxx.xxx/app2处获得。我为app2 http://app2.example.com创建了一个子域名。我的nginx.conf文件包含这些服务器:

server {
    listen 80;
    server_name example.com www.example.com;
    location / {
        proxy_pass http://213.xxx.xxx.xxx/app1;
    }
}

server {
    listen 80;
    server_name app2.example.com www.app2.example.com;
    location / {
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;
        proxy_pass http://213.xxx.xxx.xxx/app2;
    }
}

在我的网络浏览器中,我可以通过网址example.com访问app1。但我无法达到app2。当我向app2.example.com发送请求时,它会将我重定向到app2.example.com/app2。有人能告诉我配置有什么问题吗?

1 个答案:

答案 0 :(得分:0)

好像你是应用程序重定向,这就是为什么app1工作,app2无法正常工作。现在你可以尝试一些事情

server {
    listen 80;
    server_name app2.example.com www.app2.example.com;
    location / {
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;
        proxy_pass http://213.xxx.xxx.xxx/app2;
        proxy_redirect http://213.xxx.xxx.xxx/app2/ http://$host/;
    }
}