就是我有一個網域ABC.com
一台伺服器,兩個網站應用程式
兩個網站應用程式掛在不同連接埠
設定了兩個網域,A.ABC.com, B.ABC.com
訪問A.ABC.com和B.ABC.com能指向這兩個應用程式.
如何設定
世界只因有你2017-05-16 17:19:48
類似這樣子
server {
listen 80;
server_name A.ABC.com;
location / {
proxy_pass http://localhost:1234;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
另外一個:
server {
listen 80;
server_name B.ABC.com;
location / {
proxy_pass http://localhost:4321;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
這樣就可以把兩個請求轉送到對應的本機程式連接埠上了。 。 。 :)
某草草2017-05-16 17:19:48
你需要設定虛擬主機,讓 Nginx 監聽不同的網域的80端口,然後轉送到各自應用的實際端口
首先,你需要編輯/etc/nginx/nginx.conf
,在http
模組中引入其他設定檔:
include /etc/nginx/conf.d/*.conf;
這樣你就可以在/etc/nginx/conf.d
資料夾中分別設定每個虛擬主機。
然後在上面的資料夾下分別新建檔案/etc/nginx/conf.d/a.conf
和/etc/nginx/conf.d/b.conf
,当然文件名a
,b
隨你起。
server {
listen 80;
server_name a.abc.com;
access_log /data/node/log/host.access.log main;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:<YOUR PORT>/;
proxy_redirect off;
}
}
對b.abc.com
的应用只需要修改上面的server_name
就可以。
這樣每個存取http://a.abc.com
的請求就會被轉送到對應的連接埠上,並由各自的應用程式處理。