nginx反向代理解決跨域問題的url詳解

在nginx中配置proxy_pass時,當在后面的url加上了/,相當于是絕對根路徑,則nginx不會把location中匹配的路徑部分代理走;如果沒有/,則會把匹配的路徑部分也給代理走。
下面四種情況分別用http://192.168.1.4/proxy/test.html 進行訪問。
第一種:

location /proxy/ {
     proxy_pass http://127.0.0.1:81/;
}

會被代理到http://127.0.0.1:81/test.html 這個url

第二咱(相對于第一種,最后少一個 /)

location /proxy/ {
     proxy_pass http://127.0.0.1:81;
}

會被代理到http://127.0.0.1:81/proxy/test.html 這個url

第三種:

location /proxy/ {
     proxy_pass http://127.0.0.1:81/ftlynx/;
}

會被代理到http://127.0.0.1:81/ftlynx/test.html 這個url。

第四種情況(相對于第三種,最后少一個 / ):

location /proxy/ {
     proxy_pass http://127.0.0.1:81/ftlynx;
}

會被代理到http://127.0.0.1:81/ftlynxtest.html 這個url

即分為兩種正確,第2種和(1,3,4)種這兩類。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容