2008-12-08 38 views
1

所以我有一個自定義代理,它是用ruby編寫的,使用mongrel來處理一些相當複雜的緩存邏輯。這對於http和ftp請求都很有效,但是因爲mongrel並不是用來處理https請求的,所以我希望用apache來完成整個事情,並且使用ProxyRemote命令來通過https請求傳遞給mongrel。apache的ProxyRemote可以用於代理混合處理的HTTPS請求嗎?

這種事情很容易通過Apache中的ProxyPass和ProxyPassReverse命令來鏡像某些站點目錄結構,但我沒有看到使用ProxyRemote執行此操作的方法。

問題是,雜種不處理建立安全請求的CONNECT請求。因此,雖然我能夠在代理本身內處理https請求,但直接使用https請求直接使用代理不受支持。

似乎最簡單的解決方案是讓apache處理https請求,然後簡單地將http請求本身(減去CONNECT)傳遞給mongrel,並讓它適當地處理它,並將其返回給apache,然後返回給客戶端。

所以我的問題是,有沒有辦法使ProxyRemote的工作方式與ProxyPass對HTTP請求的處理方式相同(即將未加密的請求傳遞給mongrel)?

回答

0

哼,你有沒有試過嗎?

我一直在使用Apache來做HTTPS,只是傳遞了舊的默認.htaccess mod_rewrite規則的請求。

1

只要使用ProxyPass和ProxyPassReverse,你的反向代理(apache)和你的雜種之間的連接將會看到普通的普通http :),沒有必要的魔法(特別是不是連接,afaik只適用於轉發代理,但我是不確定)。