0

spec for cross domain policy files表示您可以通過使用X-Permitted-Cross-Domain-Policies標頭將crossdomain.xml文件放在根外。人們究竟如何去做呢?我想將一個crossdomain.xml文件放在一個子目錄中(我無權訪問根目錄)。這是從the spec的第11頁開始的:如何在子目錄中添加crossdomain.xml

當客戶端需要策略文件時,他們默認查看根目錄。一個 域應始終託管一個主策略文件來執行其預期的元策略。如果指示客戶端加載主策略文件以外的策略文件,則客戶端仍必須將主策略文件檢查爲 ,以確保由主策略文件定義的元策略允許使用原始請求的策略 文件。

如果沒有主策略文件,則將其留給客戶端執行默認行爲 。客戶還可以決定檢查文檔中的標頭 X-Permitted-Cross-Domain-Policies以指定 元策略,而不是完全依賴元策略的主策略文件 。除了允許的跨域策略中可接受的值之外,此頭還可能使用值爲 的非響應來指示當前文檔不應該是作爲策略文件使用的 ,儘管其他標頭或其它標頭內容。非主策略文件只能授權訪問其自己的 目錄或子目錄中的數據。

回答

1

我猜你想要爲Flash客戶端使用crossdomain.xml?事實上,默認情況下,Flash客戶端總是試圖在根中找到該文件。作爲規格狀態,其他所有內容都必須在客戶端進行設置。我不是一個閃存編碼器 - 你應該用「閃存」或其他任何客戶端編碼標記這個問題。

+0

我也不是Flash編碼器。當我在一個只能訪問一個子目錄的網站上實現http://HTML5Boilerplate.com時,這是我找到的。 – ryanve 2012-01-10 04:50:23

+1

那麼很簡單:沒有專有客戶端的API =不需要crossdomain.xml。如果您在不同的(子)域上爲JavaScript客戶端提供了API,則應該發送以下頭文件:「Access-Control-Allow-Origin:*」(儘管可以用特定的IP或域替換*) – 2012-01-11 11:50:57

+0

。我不需要它 - 我只是想理解它。你如何「發送標題」 - 是在JavaScript中? – ryanve 2012-01-12 07:17:30

相關問題