nginx配置多个应用通过80端口访问

1、让域名供应商解析pan.a.com和www.a.com到自己的服务器,让pan.a.com指向localhost:8081,让www.a.com指向localhost:8080

配置如下

upstream www.a.com {
    server localhost:8080;
}
upstream pan.a.com {
    server localhost:8081;
}

server {
    listen       80;
    server_name  www.a.com;
    location / {
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_pass http://www.a.com;
    }
}
server {
    listen       80;
    server_name  pan.a.com;
    location / {
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_pass http://pan.a.com;
    }
}

2、还可以用nginx配置让http://a.com/admin/指向http://a.com:8080,让http://a.com/product/指向http://a.com:8081

配置如下

upstream admin_server{
    server a.com:8080;
}
upstream product_server{
    server a.com:8081;
}

server {
    listen       80;
    server_name  a.com;
    location /product/ {
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_pass http://product_server/;
    }
 
    location /admin/ {
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_pass http://admin_server/;
    }
}

 

  • 附件:Nginx反向代理的四类配置方法:
    四种分别用http://127.0.0.1/SubProjectDir/default.html 进行访问。
     第一种:
    location /SubProjectDir/ {
         proxy_pass http://127.0.0.1:81/;
    }
    会被代理到http://127.0.0.1:81/default.html 这个url
    
    第二咱(相对于第一种,最后少一个 /)
    location /SubProjectDir/ {
         proxy_pass http://127.0.0.1:81;
    }
    会被代理到http://127.0.0.1:81/SubProjectDir/default.html 这个url
    
    第三种:
    location /SubProjectDir/ {
         proxy_pass http://127.0.0.1:81/ftlynx/;
    }
    会被代理到http://127.0.0.1:81/ftlynx/default.html 这个url。
    
    第四种情况(相对于第三种,最后少一个 / ):
    location /SubProjectDir/ {
         proxy_pass http://127.0.0.1:81/ftlynx;
    }
    会被代理到http://127.0.0.1:81/ftlynxdefault.html 这个url
    

     

你可能感兴趣的:(nginx配置多个应用通过80端口访问)