反向代理實例一 虛擬機IP:192.168.116.129實現效果:使用 nginx 反向代理,訪問 www.123.com 直接跳轉到 虛擬機的192.168.116.129:8080 實驗代碼 1) 啟動一個 tomcat,瀏覽器地址欄輸入 192.168.116.129:8080,出現如下界面 ...
反向代理實例一
虛擬機IP:192.168.116.129
實現效果:使用 nginx 反向代理,訪問 www.123.com 直接跳轉到 虛擬機的192.168.116.129:8080
實驗代碼
1) 啟動一個 tomcat,瀏覽器地址欄輸入 192.168.116.129:8080,出現如下界面
2) 通過修改本地 host 文件,將 www.123.com 映射到192.168.116.129
配置完成之後,我們便可以通過 www.123.com:8080 訪問到第一步出現的 Tomcat 初始界 面。那麼如何只需要輸入 www.123.com 便可以跳轉到 Tomcat 初始界面呢?便用到 nginx 的反向代理。
3) 在 nginx.conf 配置文件中增加如下配置
註意:修改配置文件後,需要重啟nginx
如上配置,我們監聽 80 埠,訪問功能變數名稱為 www.123.com,不加埠號時預設為 80 埠,故 訪問該功能變數名稱時會跳轉到 127.0.0.1:8080 路徑上。在瀏覽器端輸入 www.123.com 結果如下:
反向代理實例二
虛擬機ip:192.168.116.129
實現效果:使用 nginx 反向代理,根據訪問的路徑跳轉到不同埠的服務中 nginx 監聽埠為 9001,
訪問 http://192.168.116.129:9001/edu/ 直接跳轉到 192.168.116.129.0.0.1:8080
訪問 http://192.168.116.129:9001/vod/ 直接跳轉到 192.168.116.129:8082
實驗代碼
1、準備工作
(1)準備兩個 tomcat 伺服器,一個 8080 埠,一個 8082 埠
(2)創建文件夾和測試頁面
2、具體配
修改 nginx 的配置文件
在 http 塊中添加 server{}
- server{
- listen 9001;
- server_name localhost;
- location ~ /edu/ {
- proxy_pass http://localhost:8080;
- }
- location ~ /dev/ {
- proxy_pass http://localhost:8082;
- }
-
- }
重啟
location 指令說明
語法如下:
- 1、= :用於不含正則表達式的 uri 前,要求請求字元串與 uri 嚴格匹配,如果匹配 成功,就停止繼續向下搜索並立即處理該請求。
- 2、~:用於表示 uri 包含正則表達式,並且區分大小寫。
- 3、~*:用於表示 uri 包含正則表達式,並且不區分大小寫。
- 4、^~:用於不含正則表達式的 uri 前,要求 Nginx 伺服器找到標識 uri 和請求字 符串匹配度最高的 location 後,立即使用此 location 處理請求,而不再使用 location 塊中的正則 uri 和請求字元串做匹配。
- 註意:如果 uri 包含正則表達式,則必須要有 ~ 或者 ~* 標識。
我改了一行配置,會實現下麵修改。
有興趣的朋友可以試試(猜猜我改的那個地方)