【问题标题】:Add crossdomain.xml to Hudson将 crossdomain.xml 添加到 Hudson
【发布时间】:2009-12-14 01:18:34
【问题描述】:

如何将 crossdomain.xml 添加到我的 Hudson 服务器的根目录?我正在开发一个 Flex->Hudson 桥,我想直接访问它,而不是依赖代理来为我做这件事。

谢谢;

编辑:这是独立的 Hudson,不在任何应用服务器上运行。

【问题讨论】:

  • 您是否已将 Hudson 部署到应用服务器,或者您是否通过 'java -jar hudson.war' 独立运行它?
  • 对那些跨域策略文件要非常小心。它们可以使您面临一些严重的安全问题。在本文中阅读更多内容:jamesward.com/2009/11/08/…
  • 我通过 -jar 独立运行它。否则我只会上传文件

标签: apache-flex security hudson


【解决方案1】:

我最终使用了标准的 crossdomain.xml 并使用 jar uf 将其添加到 hudson.war。我不确定这是否是“最好”的方法,但它对我有用。

我也在使用 Authorization 标头向 Hudson 添加作业,所以我不得不使用

<allow-http-request-headers-from domain="*" headers="Authorization"/> 

也是。

【讨论】:

    【解决方案2】:
    1. 创建一个名为 crossdomain.xml 的新文本文件。
    2. 在文本编辑器中打开 crossdomain.xml。
    3. 将以下 XML 代码添加到文件中:
       <?xml version="1.0"?>
        <!DOCTYPE cross-domain-policy 
          SYSTEM "@987654321@">
        <cross-domain-policy>
          <allow-access-from domain="www.yoursite.com" />
          <allow-access-from domain="yoursite.com" />
        </cross-domain-policy>
      
    4. 保存文件。
    5. 将文件上传到yoursite.com的根目录(以便http://www.yoursite.com/crossdomain.xml可以访问该文件)。

    【讨论】:

    • Hudson 独立运行,而不是在应用服务器上。