欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx中l(wèi)ocation proxy_pass加與不加/的區(qū)別說明

 更新時間:2024年12月18日 14:28:46   作者:第三眼的思緒  
本文總結(jié)了Nginx配置中的location匹配規(guī)則和proxy_pass用法,包括前綴匹配、精確匹配、正則表達式匹配、通配符匹配以及proxy_pass的配置細節(jié)

一、location 配置

前綴匹配

# 匹配以 /images/ 開頭的URI
location /images/ {
    # 相應的處理配置
}
  • 后綴沒有/時,location /abc/def可以匹配/abc/defghi請求,也可以匹配/abc/def/ghi
  • 而后綴有/時,location /abc/def/不能匹配/abc/defghi請求,只能匹配/abc/def/anything這樣的請求

精確匹配

# 精確匹配僅為 /login 的URI
location = /login {
    # 進行相應的處理
}

正則表達式匹配

# 通過正則匹配形如 /user/123 的URI
location ~ ^/user/\d+ {
    # 進行相應的處理
}

通配符匹配

# 匹配以 .jpg、.png 或 .gif 結(jié)尾的URI
location ~* \.(jpg|png|gif)$ {
    # 進行相應的處理
}

使用 ~* 進行正則表達式匹配時,表示對請求的 URI 不區(qū)分大小寫進行匹配

二、proxy_pass 配置

不加后綴 “/”

location /api {
    # 代理僅替換 schema://ip:port
    proxy_pass http://backend_server;
}

在這種情況下,如果原始請求的 URI 是 /api/foo,Nginx 代理會將請求轉(zhuǎn)發(fā)到 http://backend_server/api/foo。

Nginx 不會修改原始請求的 URI,而是將其完整地傳遞給后端服務器。

加上后綴 “/”

location /api {
    # 代理替換整個前綴,包括location匹配使用的前綴。即 schema://ip:port/[location pattern]
    proxy_pass http://backend_server/;
}

在這種情況下,如果原始請求的 URI 是 /api/foo,Nginx 代理會將請求轉(zhuǎn)發(fā)到 http://backend_server/foo。

Nginx 會將原始請求的 URI 中location前綴 的部分去除,并將剩余部分追加到 proxy_pass 指令中配置的后端服務器地址后面。

當location為正則表達式時,proxy_pass的末尾不能帶/,否則會報錯如下

nginx: [emerg] “proxy_pass” cannot have URI part in location given by regular expression, or inside named location, or inside “if” statement, or inside “limit_except” block in xxx.conf

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論