摘要:的小說明在中配置時,遇到了一些小坑,特加以說明,防止以后忘記。當加上了,相當于是絕對根路徑,不會把中匹配的路徑部分代理走。。。帶上中的東西中的匹配路徑為。不加后會加上轉發為用在的正則匹配中的坑。。。
proxy_pass的小說明
proxy_pass http://backup/;在 nginx 中配置 proxy_pass 時,遇到了一些小坑,特加以說明,防止以后忘記。
當加上了 / ,相當于是絕對根路徑,nginx 不會把location 中匹配的路徑部分代理走;
location ^~ /static/ { # http://backup/。。。 不帶location中的東西 # 只要proxy_pass后面有東西就不帶location中的東西 proxy_pass http://www.test.com/; } # location中的匹配路徑為/static/。加了/之后proxy_pass 不會加上/static/ # curl http://localhost:3000/static/index.html # proxy_pass 轉發為 http://www.test.com/index.htmlproxy_pass http://backup;
如果沒有/,則會把匹配的路徑部分也給代理走。
location ^~ /static/ { # 帶上location中的東西 proxy_pass http://www.test.com; } # location中的匹配路徑為/static/。不加 / 后proxy_pass會加上 /static/ # curl http://localhost:3000/static/index.html # proxy_pass 轉發為 http://www.test.com/static/index.html用在 location 的正則匹配中的坑 。。。
location 中 ~ (區分大小寫)與 ~* (不區分大小寫)標識均為正則匹配,如果的話想在這里用的話,則 proxy_pass 中的 http://backup; 后面不能帶有url。
如下寫法會報錯
location ~* /static/(.*) { # 此處 location 為正則匹配,proxy_pass 后面不能有 /test proxy_pass http://www.test.com/test; }
如果 http://backup; 不帶url 。這么寫是沒有問題的
location ~* /static/(.*) { # 此處 location 為正則匹配,proxy_pass 后面不能有 /test proxy_pass http://www.test.com; }在proxy_pass 中使用變量
proxy_pass中可以使用變量,但是如果變量涉及到域名的話 需要使用resolver指令解析變量中的域名(因為nginx一開始就會解析好域名)
### 不涉及到域名變量 location ~* /aa/bb(.*) { # 正常使用變量,注意此處為location的正則匹配 proxy_pass 不能帶 / # 轉發后為 127.0.0.1:9999/test proxy_pass http://backup$1; } ### 涉及到域名的變量 location /aa/bb { # google 域名解析 resolver 8.8.8.8; # 此處變量涉及到了域名 需要調用resolver指令進行解析下否則會報錯。 set $myhost "www.test.com"; proxy_pass http://$myhost; }rewrite 重寫后的 url 會忽略proxy_pass后路徑
# curl 127.0.0.1:8888/aa/bb/ccc location /aa/bb { rewrite /aa/bb(.*) /re$1 break; proxy_pass http://backup; } # 轉發后得到 127.0.0.1:9999/re/ccc location /aa/bb{ rewrite /aa/bb(.*) /re$1 break; # rewrite 重寫后的 url 路徑會 忽略 /asd 相當于 http://backup;什么都不帶 proxy_pass http://backup/asd; } # 此處轉發后同樣得到 127.0.0.1:9999/re/ccc
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/39434.html
摘要:代理請求當代理請求時,它會將請求發送到指定的代理服務器,獲取響應并將其發送回客戶端。是否啟用緩沖使用指令,默認是開啟的。 這是 Nginx 學習總結的第五篇,上一篇介紹到了 Nginx 學習總結(4)—— Rewrite 模塊,這一篇會對 反向代理 相關知識做一些總結。 什么是代理?代理通常用于在多個服務器之間分配負載,無縫地顯示來自不同網站的內容,或通過除 HTTP 以外的協議將請求...
摘要:參數值可以包含變量請求頭響應頭處理默認情況下,重新定義代理請求和中的兩個頭字段,并刪除了值為空字符串的頭字段。修改或設置請求頭的值請求頭的值可以是變量,文本或者是它們的組合如果為空字符串那么這個字段將不會被轉發到代理服務器。 搞懂nginx的proxy模塊-01 nginx的ngx_http_proxy_module模塊的指令著實是太多了,其實平時工作中經常用到的指令也就是那幾個,但是...
摘要:服務器被標記為不健康,并且在再次通過運行狀況檢查之前不會向其發送客戶端請求。對于上面聲明的樣本組中的第一個服務器,運行狀況檢查會請求。響應必須滿足塊中定義的所有條件,以便服務器通過運行狀況檢查。 原文鏈接:何曉東 博客 翻譯自 官方文檔 被動檢查 對于被動健康檢查,NGINX 和 NGINX Plus 會在事件發生時對其進行監控,并嘗試恢復失敗的連接。如果仍然無法恢復正常,NGINX...
摘要:服務器被標記為不健康,并且在再次通過運行狀況檢查之前不會向其發送客戶端請求。對于上面聲明的樣本組中的第一個服務器,運行狀況檢查會請求。響應必須滿足塊中定義的所有條件,以便服務器通過運行狀況檢查。 原文鏈接:何曉東 博客 翻譯自 官方文檔 被動檢查 對于被動健康檢查,NGINX 和 NGINX Plus 會在事件發生時對其進行監控,并嘗試恢復失敗的連接。如果仍然無法恢復正常,NGINX...
閱讀 3762·2021-09-22 15:17
閱讀 1946·2021-09-22 14:59
閱讀 2346·2020-12-03 17:00
閱讀 3209·2019-08-30 15:55
閱讀 482·2019-08-30 11:23
閱讀 3487·2019-08-29 13:56
閱讀 518·2019-08-29 12:54
閱讀 2257·2019-08-29 12:49