2014-04-03 59 views
2

我嘗試將請求標頭中的主機設置爲「server2」,以便ProxyPass將請求定向到server2,但在所有其他情況下(當它將其傳遞到server1時)保留主機。我可以在Apache VirtualHost中使用ProxyPreserveHost和RequestHeader集主機嗎?

<Proxy "/path1"> 
    RequestHeader set Host server2 
</Proxy> 
ProxyPass   /path1 http://server2/path1 
ProxyPassReverse /path1 http://server2/path1 

ProxyPreserveHost  On 
ProxyPass  / http://server1/ 

有沒有辦法有ProxyPreserveHost ON OFF用於傳入的URL開始/路徑1,但有它在爲所有其他網址嗎?或者在上面的代碼示例中嘗試更改RequestHeader中的主機(這不起作用)。

我使用的Apache版本2.2.22在Ubuntu 12.04

回答

0

這不是立即的問題的答案,但它是一個回答我的問題。

我決定嘗試nginx的,而不是Apache 2.2的,並與該網站可用的配置,它的工作:

server { 
    listen 80; 

    location path1 { 
    proxy_set_header Host 'server2'; 
    proxy_pass http://server2/path1; 
    } 
    location/{ 
    proxy_set_header Host $host; 
    proxy_pass http://server1; 
    } 
} 

我認爲Apache 2.4還支持位置。所以我仍然不知道在Apache 2.2中是否可行,但是這對於我來說是nginx的工作。

相關問題