亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn)

 更新時(shí)間:2019年10月12日 09:28:36   作者:@Ryan Miao  
這篇文章主要介紹了Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

目錄

  • 一個(gè)種方案是proxy_pass后面加根路徑/.
  • 另一種方案是使用rewrite

使用Nginx做代理的時(shí)候,可以簡(jiǎn)單的直接把請(qǐng)求原封不動(dòng)的轉(zhuǎn)發(fā)給下一個(gè)服務(wù)。

比如,訪問(wèn)abc.com/appv2/a/b.html, 要求轉(zhuǎn)發(fā)到localhost:8088/appv2/a/b.html

簡(jiǎn)單配置如下:

upstream one {
 server localhost:8088 weight=5;
}

server {
  listen       80;
  server_name     abc.com;
  access_log "pipe:rollback /data/log/nginx/access.log interval=1d baknum=7 maxsize=1G" main;

  location / {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP    $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-NginX-Proxy true;

    proxy_pass http://one;
  }

}

即,設(shè)置proxy_pass即可。請(qǐng)求只會(huì)替換域名。

但很多時(shí)候,我們需要根據(jù)url的前綴轉(zhuǎn)發(fā)到不同的服務(wù)。

比如

abc.com/user/profile.html轉(zhuǎn)發(fā)到 用戶服務(wù)localhost:8089/profile.html

abc.com/order/details.html轉(zhuǎn)發(fā)到 訂單服務(wù) localhost:8090/details.html

即,url的前綴對(duì)下游的服務(wù)是不需要的,除非下游服務(wù)添加context-path, 但很多時(shí)候我們并不喜歡加這個(gè)。如果Nginx轉(zhuǎn)發(fā)的時(shí)候,把這個(gè)前綴去掉就好了。

一個(gè)種方案是proxy_pass后面加根路徑/.

server {
  listen       80;
  server_name     abc.com;
  access_log "pipe:rollback /data/log/nginx/access.log interval=1d baknum=7 maxsize=1G" main;

  location ^~/user/ {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP    $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-NginX-Proxy true;

    proxy_pass http://user/;
  }

  location ^~/order/ {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP    $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-NginX-Proxy true;

    proxy_pass http://order/;
  }

}

^~/user/表示匹配前綴是user的請(qǐng)求,proxy_pass的結(jié)尾有/, 則會(huì)把/user/*后面的路徑直接拼接到后面,即移除user.

另一種方案是使用rewrite

upstream user {
 server localhost:8089 weight=5;
}
upstream order {
 server localhost:8090 weight=5;
}


server {
  listen       80;
  server_name     abc.com;
  access_log "pipe:rollback /data/log/nginx/access.log interval=1d baknum=7 maxsize=1G" main;

  location ^~/user/ {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP    $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-NginX-Proxy true;

    rewrite ^/user/(.*)$ /$1 break;
    proxy_pass http://user;
  }

  location ^~/order/ {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP    $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-NginX-Proxy true;

    rewrite ^/order/(.*)$ /$1 break;
    proxy_pass http://order;
  }

}

注意到proxy_pass結(jié)尾沒(méi)有/, rewrite重寫了url。

關(guān)于rewrite

syntax: rewrite regex replacement [flag]
Default: —
Context: server, location, if

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • nginx配置https加密訪問(wèn)的詳細(xì)教程

    nginx配置https加密訪問(wèn)的詳細(xì)教程

    這篇文章主要介紹了nginx配置https加密訪問(wèn)的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Nginx 只允許 www 域名訪問(wèn)并禁止裸域名訪問(wèn)的實(shí)現(xiàn)步驟

    Nginx 只允許 www 域名訪問(wèn)并禁止裸域名訪問(wèn)的實(shí)現(xiàn)步驟

    通過(guò)Nginx配置,可以設(shè)定僅允許www域名訪問(wèn),禁止或重定向裸域名,提升網(wǎng)站品牌統(tǒng)一性及用戶體驗(yàn),設(shè)置包括創(chuàng)建針對(duì)www的虛擬主機(jī),禁止裸域名訪問(wèn),并可選進(jìn)行裸域名到www的301重定向,完成后,重啟Nginx服務(wù)器使配置生效
    2024-10-10
  • nginx部署多前端項(xiàng)目的幾種方法

    nginx部署多前端項(xiàng)目的幾種方法

    最近一臺(tái)服務(wù)器要配置多個(gè)前端項(xiàng)目,個(gè)人總結(jié)了3種方法來(lái)實(shí)現(xiàn)在一臺(tái)服務(wù)器上使用nginx部署多個(gè)前端項(xiàng)目的方法。需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Nginx實(shí)現(xiàn)UDP四層轉(zhuǎn)發(fā)的過(guò)程

    Nginx實(shí)現(xiàn)UDP四層轉(zhuǎn)發(fā)的過(guò)程

    為了解決VPN連接速度慢的問(wèn)題,可以通過(guò)Nginx實(shí)現(xiàn)UDP的四層轉(zhuǎn)發(fā),首先檢查Nginx是否安裝了with-stream模塊,然后修改nginx.conf配置文件進(jìn)行UDP端口的轉(zhuǎn)發(fā)設(shè)置,使用nginx-t檢查配置文件語(yǔ)法,無(wú)誤后重新加載Nginx,這樣通過(guò)國(guó)內(nèi)服務(wù)器中轉(zhuǎn),可以提升連接到國(guó)外服務(wù)器的速率
    2024-09-09
  • Nginx下301重定向域名的方法小結(jié)

    Nginx下301重定向域名的方法小結(jié)

    在網(wǎng)站建設(shè)中需要網(wǎng)頁(yè)重定向的情況很多:如網(wǎng)頁(yè)目錄結(jié)構(gòu)變動(dòng),網(wǎng)頁(yè)重命名、網(wǎng)頁(yè)的擴(kuò)展名改變、網(wǎng)站域名改變等。
    2010-08-08
  • nginx添加ssl模塊的方法教程

    nginx添加ssl模塊的方法教程

    這篇文章主要給大家介紹了關(guān)于nginx添加ssl模塊的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)許吧。
    2017-12-12
  • Nginx中實(shí)現(xiàn)訪問(wèn)HTTP請(qǐng)求時(shí)自動(dòng)跳轉(zhuǎn)到HTTPS請(qǐng)求

    Nginx中實(shí)現(xiàn)訪問(wèn)HTTP請(qǐng)求時(shí)自動(dòng)跳轉(zhuǎn)到HTTPS請(qǐng)求

    本文主要介紹了Nginx中實(shí)現(xiàn)訪問(wèn)HTTP請(qǐng)求時(shí)自動(dòng)跳轉(zhuǎn)到HTTPS請(qǐng)求,下面介紹了兩種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • nginx proxy_set_header的具體實(shí)現(xiàn)

    nginx proxy_set_header的具體實(shí)現(xiàn)

    proxy_set_header?是 Nginx 配置中的一個(gè)重要指令,本文主要介紹了nginx proxy_set_header的具體實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-07-07
  • 淺析Nginx如何實(shí)現(xiàn)接口分流

    淺析Nginx如何實(shí)現(xiàn)接口分流

    這篇文章主要為大家詳細(xì)Nginx如何實(shí)現(xiàn)接口分流的基本步驟和示例配置,文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-10-10
  • Nginx服務(wù)狀態(tài)監(jiān)控的方法

    Nginx服務(wù)狀態(tài)監(jiān)控的方法

    這篇文章主要介紹了Nginx服務(wù)狀態(tài)監(jiān)控的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06

最新評(píng)論