0
我在通過nginx代理運行的頁面時遇到了一些問題。 這個頁面調用其他內部服務器,我想用nginx重寫這些URL。nginx重寫代理頁面中的url
我已經有一個代理通過運行以下:
foo.site.internal - > foo.site.nl(公共) 該網站內部,呼籲像其他一些服務: foo2的。 site.internal:1400/json/api/call/bla
當前foo.site.nl試圖通過一些javescript用法接收這些調用。但這是不可能的,因爲最終用戶無法連接到foo2.site.internal
所以我創建了一個反向代理: foo2.site.internal:1400運行在:foo.site.nl :1400,所以我想在不改變後端站點配置的情況下完成以下任務:
將頁面中的foo2.site.internal:1400/json/api/call/bla重寫爲foo.site.nl: 1400/json/api/call/bla
nginx能做這樣的事嗎?
我目前的配置:
server {
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/site.nl.cert;
ssl_certificate_key /etc/nginx/ssl/site.nl.key;
server_name foo.site.nl;
location/{
proxy_intercept_errors on;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://foo.site.internal/;
}
}
server {
listen 14000 default_server;
server_name foo.site.nl;
location/{
proxy_pass http://foo2.site.internal:14000;
proxy_set_header Host foo2.site.internal:14000;
}
}
這似乎並沒有工作:https://s21.postimg.org/hr9v8m5fb/imagekopie.png 我想重寫de網頁內容中的網址。 當頁面的url被重寫到intra-intern.domain.nl(公共頁面)時,https錯誤將被解決。 – Mitchel