首頁  >  問答  >  主體

Nginx反向代理程式中絕對目錄如何處理?

場景需求

現要設計一個對外網關伺服器,代理眾多公司內部的其他服務。
現在使用的方法為nginx反向代理。
Nginx.conf中程式碼如下

location ^~ /services/ {
    ...
    proxy_pass 真实uri
    ...
}

遇到的問題

當某一個服務的html程式碼包含對絕對目錄的資源存取或跳轉時會出現問題。

例如要代理abc網站 10.10.10.10/
該網站的html中包含對 /static/a.jpg資源的存取。

當使用者造訪我的網關伺服器時,呼叫的方法依序為
Get www.xxx.com/services/abc
Get www.xxx.com/static/a.jpg,此時會get失敗。

現有的暫時應對方法為在nginx.conf中加入對abc網站絕對目錄的代理,如下

location /static/ {
    proxy_pass http://10.10.10.10/static/;
}

但是如果服務一多,就會衝突。

請問問題如何解決?

謝謝各位大神瀏覽。

PHP中文网PHP中文网2681 天前933

全部回覆(1)我來回復

  • PHP中文网

    PHP中文网2017-06-16 09:21:40

    為什麼不配置幾個子網域呢 abc.xxx.com

    回覆
    0
  • 取消回覆