2

已编辑的问题

总之:

我有 2 个站点 siteA.com siteB.com

iframe 属于 siteB.com 但我也想允许 siteA.com 到 iframe siteB.com 页面。但是,任何不是 siteA 或 siteB.com 的东西都将被重定向到 siteA.com

使用 javascript,我如何检查,考虑忽略 www 或不带 www(通配符),并且我的网站可能是 siteA.com/pretty-url

我如何使用 javascript 进行检查并添加安全性,任何未经授权的随机站点都将导致 window.top.location.href 被重定向到 siteA.com

感谢所有帮助,这里是新的:)

4

1 回答 1

2

像这样的东西?:

if (window.top != window && !window.top.location.href.split('?')[0].split('#')[0].match('mysitedomain.com'))
{
    window.top.location.href = window.location.href;
}

第一项检查是确保仅当您的站点位于框架中时才运行此代码。
第二项检查是查看顶部框架(浏览器窗口)的 url 是否包含您的域。我们需要忽略查询字符串/锚点,因为它看起来像这样: http://notmine.com/path/file.html?subframe= mysitedomain.com

这仍然匹配:

http://not* mysitedomain.com */path

在 .match(...) 中,您可以包含 http:// 或 https://。

更新以回答您的编辑:

var topUrl = window.top.location.href.split('?')[0].split('#')[0];

if (window.top != window && !topUrl.match('siteA.com') && !topUrl.match('siteB.com'))
{
    window.top.location.href = "siteA.com";
}
于 2012-07-29T08:39:20.833 回答