立即为所有这些选项设置沙箱是不可行的。所以我呼吁社区寻求帮助。这是一个奇怪的,我只是想知道什么会起作用(最重要的是在ie)和什么不会。
为了更好的阅读;)
╔═════════════════════╦═══╦═══════════════╦══════════════════╦═══════════════════╗
║ Page with an iFrame ║ c ║ inside iFrame ║ domain ║ works? ║
╠══════════╦══════════╣ o ╠═══════╦═══════╬══════╦═══════════╬═══════════════════╣
║ http ║ https ║ n ║ http ║ https ║ same ║ different ║ ║
╠══════════╬══════════╣ t ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ X ║ ║ a ║ ║ X ║ X ║ ║ no idea ║
╠══════════╬══════════╣ i ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ X ║ ║ n ║ ║ X ║ ║ X ║ no idea ║
╠══════════╬══════════╣ i ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ ║ X ║ n ║ ║ X ║ X ║ ║ no idea ║
╠══════════╬══════════╣ g ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ ║ X ║ ║ ║ X ║ ║ X ║ no idea ║
╠══════════╬══════════╣ ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ X ║ ║ ║ X ║ ║ X ║ ║ I know this works ║
╠══════════╬══════════╣ ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ X ║ ║ ║ X ║ ║ ║ X ║ I know this works ║
╠══════════╬══════════╣ ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ ║ X ║ ║ X ║ ║ X ║ ║ doubt this works ║
╠══════════╬══════════╣ ╠═══════╬═══════╬══════╬═══════════╬═══════════════════╣
║ ║ X ║ ║ X ║ ║ ║ X ║ doubt this works ║
╚══════════╩══════════╩═══╩═══════╩═══════╩══════╩═══════════╩═══════════════════╝
请帮忙!提前谢谢。
答案 0 :(得分:17)
包含页面和iframe是否在同一个域上并不重要。
http://
网址使用iframe通过http://
投放的网页:效果很好。http://
网址使用iframe通过https://
投放的网页:工作正常,but you won't be able to ensure the security of the iframe。https://
网址使用iframe通过http://
投放的网页:将生成混合内容警告,从而带来潜在的安全风险,应该避免使用。https://
网址使用iframe通过https://
投放的网页:效果很好。用户可能会发现很难检查iframe是否来自他们期望的网站。他们有效地信任包含页面做正确的事情(见3-D secure problem)。答案 1 :(得分:4)
我遇到了同样的问题,发现一个解决方法对我和我的项目工作正常:
我没有使用iframe,而是使用弹出窗口(javascript window.open)放置iFrame。在打开弹出窗口之前,我检查iframe上的SRC是否以https开头。如果是这样,我用https打开弹出窗口,否则我用http打开弹出窗口。
希望这些信息对你们中的一些人有所帮助: - )