Flex反向代理问题

时间:2009-08-24 20:34:18

标签: flex flash apache proxy

我目前正在设置反向代理来测试基于flex的Web应用程序。

当前设置使用mod _代理(使用mod _代理_ http)将代理反向到另一台主机。除了从Flash播放器发出的请求外,一切似乎都有效,这会导致出现“安全错误访问URL”的错误消息。

我在后端系统上设置了一个crossdomain.xml,它只允许所有内容,使用“< allow-access-from domain =”*“/>”。

crossdomain.xml可用于后端和代理服务器。

奇怪的是,当我使用firebug监控连接流量时,浏览器绕过代理并直接进入后端服务器以获取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>

<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>

2 个答案:

答案 0 :(得分:1)

问题实际上是由Web应用程序生成的WSDL中编写的端点的结果。它们包含后端服务器的URL。我不得不打开“ProxyPreserveHost”指令,让它使用代理的url作为端点。这解决了问题。

答案 1 :(得分:0)

需要为Flash播放器提供反向代理服务器的URL,而不是灵活服务器。