Nginx配置多域名代理
阿新 • • 發佈:2021-01-12
1 server { 2 listen 80; 3 4 server_name pan.rulef.com; 5 6 location / { 7 8 proxy_pass http://localhost:8080; 9 } 10 }
https://www.cnblogs.com/iuuxx/p/14156341.html
Nginx配置多域名代理
目的
當我們有多個站點需要對外網開放,每個站點的域名都不一樣,然而我們只有一個外網ip。這種情況下,我們就可以使用一個nginx來配置多域名代理。這種代理方式可以解決,在同一個埠上針對不同域名代理不同的站點。這樣對外看起來就像是有多臺機器同時對外開發一樣。
操作步驟
- 進入nginx安裝目錄下的sites-enabled目錄
- 一般剛安裝好的的nginx可以在該目錄下看到default配置檔案,該檔案可以用作配置檔案模板,同時該檔案做了最基本的監聽80埠
- 拷貝一份檔案用於監聽新的域名,如監聽:tech.abc.com。命令為:
root@test:/etc/nginx/sites-enabled# cp default tech
- 修改該配置的監聽域名:
root@test:/etc/nginx/sites-enabled# vi tech
## 進入編輯頁面
## 將server_name的屬性改為: tech.abc.com
server_name tech.abc.com
## 退出 ESC :wq
- 過載配置
root@test:/etc/nginx/sites-enabled# nginx -s reload
- 如果需要再配置一個test.abc.com或者其他域名, 只需要再拷貝一個配置檔案,修改server_name,然後過載配置檔案即可
注意
阿里雲等雲伺服器提供商對nginx代理做了限制,如果所代理的站點未備案,則不允許進行代理。解決這個問題的方案,可以使用國外的伺服器來做nginx代理伺服器,不過這個方案的速度相對較慢。