我有一些本地主機子域上的nginx proxy_pass重定向問題。我有一個域「domain.com」,我想在* .localhost:9000上重定向* .domain.com上的所有請求。然後,節點將* .localhost:9000上的所有請求處理到良好的快速應用程序。Nginx代理服務器通過子域,節點虛擬主機
在nginx的的conf當我嘗試以下方法:在extranet.domain.com
server {
server_name extranet.domain.com;
listen 80;
location/{
proxy_pass http://extranet.localhost:9000;
}
}
請求也被重定向到好的快遞web應用。
有了這個:
server {
server_name ~^(.*?)\.domain\.com$;
listen 80;
location/{
proxy_pass http://localhost:9000/$1;
}
}
快速的應用程序運行在localhost:9000手柄請求/ mysubdomainname,這implie該正則表達式是好的。
但是當我嘗試:
server {
server_name ~^(.*?)\.domain\.com$;
listen 80;
location/{
proxy_pass http://$1.localhost:9000;
}
}
在* .domain.com返回HTTP代碼的所有請求502 爲什麼http://localhost:9000/ $ 1;作品而不是http://$1.localhost:9000; ? (所有子域均在/ etc/hosts中設置)。
在此先感謝。我完全失去了!
謝謝, 所以唯一的方法來做我想做的就是添加 服務器{server_name:subdomain1.domain.com; 聽:80; location/{ proxy_pass http://subdomain1.localhost:9000; } } for each subdomain? – Dafuck
或者配置你自己的本地DNS服務器。 – VBart