nginx 配置實例-反向代理

實例一

實現效果:

使用 nginx 反向代理,訪問 www.123.com 直接跳轉到 127.0.0.1:8080
 
 

訪問過程分析

 

實驗過程

(1)啓動一個 tomcat,瀏覽器地址欄輸入 127.0.0.1:8080,驗證tomcat是否啓動成功。

(2)通過修改本地 host (C:\Windows\System32\drivers\etc\host)文件,將 www.xb.com 映射到 127.0.0.1

 127.0.0.1 www.xb.com

 此時就已經可以通過訪問www.xb.com:8080訪問tomcat的界面了(此時8080端口號是不能省略的),那麼如何只需要輸入 www.xb.com 便可以跳轉到 Tomcat 初始界面呢?

(3)在 nginx.conf 配置文件中增加如下配置

如上配置,我們監聽 80 端口,訪問域名爲 www.xb.com,不加端口號時默認爲 80 端口,故 訪問該域名時會跳轉到 127.0.0.1:8080 路徑上。在瀏覽器端輸入 www.xb.com 結果如下(需要啓動nginx):

 

 

實列二

實現效果:

使用 nginx 反向代理,根據訪問的路徑跳轉到不同端口的服務中,nginx 監聽端口爲 9001,

訪問 http://127.0.0.1:9001/edu/ 直接跳轉到 127.0.0.1:8081
訪問 http://127.0.0.1:9001/vod/ 直接跳轉到 127.0.0.1:8082

 

步驟:

 (1)準備兩個 tomcat 服務器,一個 8080 端口,一個 8081 端口

 (2)創建文件夾和測試頁面

 (3)具體配置

另加一個server塊

訪問:http://127.0.0.1:9001/edu/a.html

訪問:http://127.0.0.1:9001/vod/b.html

 

location 指令說明

該指令用於匹配 URL。語法如下:

1、= :用於不含正則表達式的 uri 前,要求請求字符串與 uri 嚴格匹配,如果匹配成功,就停止繼續向下搜索並立即處理該請求。
2、~:用於表示 uri 包含正則表達式,並且區分大小寫。
3、~*:用於表示 uri 包含正則表達式,並且不區分大小寫。
4、^~:用於不含正則表達式的 uri 前,要求 Nginx 服務器找到標識 uri 和請求字符串匹配度最高的 location 後,立即使用此 location 處理請求,而不再使用 location塊中的正則 uri 和請求字符串做匹配。
 
注意:如果 uri 包含正則表達式,則必須要有 ~ 或者 ~* 標識。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章