20080513

[解法]跨網域框架IFRAME中Cookies和Session找不到

[解法]跨網域框架IFRAME之中Cookies和Session找不到的問題

描述:

由於IE6之後基於安全性的安全防範措施,
造成網頁使用IFRAME或FRAMESET內嵌其他網域的網頁時,
會找不到網頁中所設定的Cookie值和Session值。

 



解法:

在作為FRAME內容的ASP檔案的開頭嵌入以下程式碼
<%
Response.AddHeader "P3P", "CP=CAO PSA OUR"
%><%
Response.AddHeader "P3P", "CP=CAO PSA OUR"
%>


解說:

此解法源自於MSDN,
其他如php或java的寫法可在網路上搜尋得到。
運作原理在接收開網頁時放寬瀏覽器的安全判別方式。

範例:

Aeon博克誌的留言板一開始就是放在國外的網路伺服器空間上,
初次發現這個問題的時候很震驚,嘗試了各種規避的方法,
最後還是這個方法最有效。

0 意見:

張貼留言