我一直在遇到一個Apache的mod_proxy問題,它不會轉發任何流量。我正在使用運行Ubuntu 13.04的Windows Azure虛擬機,併爲其配置了正確的HTTPS端點(端口443)。正確的Apache模塊(代理,ssl等)都安裝完畢,錯誤日誌什麼也沒有顯示,甚至沒有警告來解釋爲什麼會發生這種情況。我的虛擬主機設置如下:Azure上的Apache mod_proxy
<VirtualHost *:443>
RequestHeader set X-Forwarded-Proto "https"
ProxyPreserveHost On
ServerName www.example.com
SSLEngine On
#SSLProxyEngine On
SSLCertificateFile /ssl/my.com.crt
SSLCertificateKeyFile /ssl/my.key
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
SSLRequireSSL
Order deny,allow
Allow from all
</Location>
ProxyPass/http://127.0.0.1:8080/
ProxyPassReverse/http://127.0.0.1:8080/
</VirtualHost>
我有Listen 443
和NameVirtualHost *:443
都設置爲好。我在另一個端口上的服務運行良好,因爲做一個wget
響應一個HTTP 200 OK響應,我可以通過手動輸入端口號來達到它。我禁用了所有防火牆(用於測試)也無濟於事。但是,每當我嘗試通過mod_proxy(端口443)來訪問外部服務時,請求超時,並且出現通常的「網站不可用」瀏覽器錯誤。
如果它意味着什麼,我在另一個端口上運行的應用程序,我需要將HTTPS流量轉發到Play Framework 2.1應用程序。我將服務器設置爲與他們的文檔完全一樣,但仍然存在這些問題,所以我假設它可能與Azure有關。
任何想法?是否還有一些其他類型的端點配置需要我爲Windows Azure虛擬機支持SSL/TLS?
正如你從VirtualHost例子中可以看出的那樣,我已經從互聯網上試過了十幾個不同的建議 - 沒有一個能夠工作,所以我希望有人在這之前有過這個問題。 –
此外,此問題不僅限於HTTPS - HTTP(端口80)通信也不起作用。 –