2014-09-03 176 views
0

我想使用動態URL的Nginx的反向代理功能。Nginx動態反向代理問題

我的呼喚網址是:

http://test.com:8080/10.20.34.53/index.php 

URL的動態部分是IP地址。然後我想使用代理呼叫以下URL

http://10.20.34.53/index.php 

我該如何配置我的Nginx來做到這一點?

感謝,

回答

0

我認爲你可以使用這樣的事情:

location /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/index.php { 
    // ... some stuff 
    proxy_pass http://$1/index.php; 
} 

警告:我沒有測試正則表達式匹配的IP地址。

+0

正則表達式的工作原理;然而,即使我關閉proxy_redirect,Nginx也會重定向到提供的IP地址; 。我該如何解決這個重定向問題?你有什麼主意嗎? – 2014-09-07 01:01:36

+0

對不起,但也許我不明白你的問題。 我提出的解決方案是: - 對於每個http://test.com:8080/aaa.bbb.ccc.ddd/index.php,請參閱aaa.bbb.ccc.ddd部分 - 重定向到http: //aaa.bbb.ccc.ddd/index.php 這不是你所需要的嗎? – 2014-09-07 07:12:06

+0

不,它應該在反向代理中工作。它不應該被重定向到另一個頁面...因此,無論用戶何時請求:test.com/aaa.bbb.ccc.ddd/index.php,nginx都應該使用aaa.bbb.ccc執行反向代理.ddd/index.php文件 – 2014-09-07 10:59:49