1. 程式人生 > 實用技巧 >Nginx配置多域名代理

Nginx配置多域名代理

 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來配置多域名代理。這種代理方式可以解決,在同一個埠上針對不同域名代理不同的站點。這樣對外看起來就像是有多臺機器同時對外開發一樣。

操作步驟

  1. 進入nginx安裝目錄下的sites-enabled目錄
  2. 一般剛安裝好的的nginx可以在該目錄下看到default配置檔案,該檔案可以用作配置檔案模板,同時該檔案做了最基本的監聽80埠
  3. 拷貝一份檔案用於監聽新的域名,如監聽:tech.abc.com。命令為:
root@test:/etc/nginx/sites-enabled# cp default tech
  1. 修改該配置的監聽域名:
root@test:/etc/nginx/sites-enabled# vi tech

## 進入編輯頁面
## 將server_name的屬性改為: tech.abc.com

server_name tech.abc.com

## 退出 ESC :wq
  1. 過載配置
root@test:/etc/nginx/sites-enabled# nginx -s reload
  1. 如果需要再配置一個test.abc.com或者其他域名, 只需要再拷貝一個配置檔案,修改server_name,然後過載配置檔案即可

注意

阿里雲等雲伺服器提供商對nginx代理做了限制,如果所代理的站點未備案,則不允許進行代理。解決這個問題的方案,可以使用國外的伺服器來做nginx代理伺服器,不過這個方案的速度相對較慢。