2009-08-24 157 views
0

我目前正在設置用於測試基於Flex的Web應用程序的反向代理。Flex反向代理問題

當前設置使用mod _代理(使用mod _代理_ http)將代理反向到另一個主機。除了Flash播放器發出的請求之外,一切似乎都正常,這會導致出現一條錯誤消息,指出「訪問網址的安全錯誤」。

我在後端系統上設置了一個crossdomain.xml,它只是允許使用「< allow-access-from domain =」*「/ >」。

crossdomain.xml可從後端服務器和代理服務器中取得/取消。

奇怪的是,當我使用螢火蟲監控連接流量時,瀏覽器繞過代理並直接到後端服務器以獲取crossdomain.xml文件。

有沒有人有任何建議,我可以如何讓Flex在這樣的環境中正常行爲?

我在下面包含了我的代理配置。

<IfModule mod_proxy.c>
ProxyRequests Off

<Proxy *> 
      AddDefaultCharset off 
      Order deny,allow 
      Allow from all 
    </Proxy> 

    # Enable/disable the handling of HTTP/1.1 "Via:" headers. 
    # ("Full" adds the server version; "Block" removes all outgoing Via: headers) 
    # Set to one of: Off | On | Full | Block 

    ProxyVia On 

<Location "/"> 
    ProxyPass http://backend:9080/ 
    ProxyPassReverse http://backend:9080/ 
</Location> 

</IfModule>

回答

1

問題實際上是由Web應用程序生成的WSDL中編寫的端點的結果。它們包含後端服務器的URL。我必須打開「ProxyPreserveHost」指令才能使用代理的端點URL。這解決了問題。

0

Flash播放器需要給予的URL反向代理服務器,而不是Flex服務器。

+0

我在哪裏設置? – dskiles