只允许iframe访问,禁止直接url访问

伯寻 2016-12-12 07:35:35
网站A iframe了B网站内容

求助,只允许从网站A访问,禁止直接输入B网站url访问

求大神解答一下
...全文
1662 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoain 2018-06-15
  • 打赏
  • 举报
回复
//方式一  
if (self.frameElement && self.frameElement.tagName == "IFRAME") {  
         alert('在iframe中');  
}  
//方式二  
if (window.frames.length != parent.frames.length) {  
         alert('在iframe中');  
}  
//方式三  
if (self != top) {    
     alert('在iframe中');  
}  
天际的海浪 2017-09-06
  • 打赏
  • 举报
回复
b页面

<script type="text/javascript">
if (top==window) {
	window.location.href = "a页面地址";
}
</script>
贝恩斯 2017-09-06
  • 打赏
  • 举报
回复
更正一下: <% dim ComeUrl ComeUrl=lcase(trim(request.ServerVariables("HTTP_REFERER"))) if ComeUrl="" then response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许直接输入地址访问本系统的后台管理页面。</font></p>" '贝恩斯网络开发http://www.bbnsc.com end if %>
贝恩斯 2017-09-06
  • 打赏
  • 举报
回复
这段ASP代码能实现这个功能。只允许iframe框架打开。不允许直接输入网址打开。 <% dim ComeUrl,cUrl,AdminName ComeUrl=lcase(trim(request.ServerVariables("HTTP_REFERER"))) if ComeUrl="" then response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许直接输入地址访问本系统的后台管理页面。</font></p>" '贝恩斯网络开发http://www.bbnsc.com end if %>
伯寻 2016-12-17
  • 打赏
  • 举报
回复
引用 6 楼 showbo 的回复:
[quote=引用 5 楼 qq_37016421 的回复:] [quote=引用 4 楼 showbo 的回复:] iframe加载的话来源地址100%不为空,所以判断来源地址是空的就停止访问 不过这个是服务器端的控制的,你要客户端控制没有多少意义,

<head>
if(document.referrer==''){
document.write('<style>body{display:none}</style><h1>只能iframe内打开</h1>')
}
</head>

其他内容
我把这个代码放进去,打开网址之后一片空白,iframe里也看不到东西,源码可以看到[/quote] 因为设置body隐藏了。。动态输出的h1也被放到body了导致无法显示。。直接alert[/quote] 关键我iframe也看不到东西了啊,我的需求是iframe能看到内容,直接输入链接地址看不到
  • 打赏
  • 举报
回复
引用 5 楼 qq_37016421 的回复:
[quote=引用 4 楼 showbo 的回复:] iframe加载的话来源地址100%不为空,所以判断来源地址是空的就停止访问 不过这个是服务器端的控制的,你要客户端控制没有多少意义,

<head>
if(document.referrer==''){
document.write('<style>body{display:none}</style><h1>只能iframe内打开</h1>')
}
</head>

其他内容
我把这个代码放进去,打开网址之后一片空白,iframe里也看不到东西,源码可以看到[/quote] 因为设置body隐藏了。。动态输出的h1也被放到body了导致无法显示。。直接alert
伯寻 2016-12-13
  • 打赏
  • 举报
回复
引用 4 楼 showbo 的回复:
iframe加载的话来源地址100%不为空,所以判断来源地址是空的就停止访问 不过这个是服务器端的控制的,你要客户端控制没有多少意义,

<head>
if(document.referrer==''){
document.write('<style>body{display:none}</style><h1>只能iframe内打开</h1>')
}
</head>

其他内容
我把这个代码放进去,打开网址之后一片空白,iframe里也看不到东西,源码可以看到
  • 打赏
  • 举报
回复
iframe加载的话来源地址100%不为空,所以判断来源地址是空的就停止访问 不过这个是服务器端的控制的,你要客户端控制没有多少意义,

<head>
if(document.referrer==''){
document.write('<style>body{display:none}</style><h1>只能iframe内打开</h1>')
}
</head>

其他内容
当作看不见 2016-12-12
  • 打赏
  • 举报
回复
办法是肯定有的,修改路由(router)将这个页面的router 改为404.这样用户请求这个页面的时候,就访问不到了。但是iframe里面的页面想要访问怎么办,在路由后接一串数字才能get到页面。。好吧,如果有好奇宝宝确实会发现这一点。就能想到这了
伯寻 2016-12-12
  • 打赏
  • 举报
回复
引用 1 楼 qq_29594393 的回复:
奇葩需求。。。不是应该不能被iframe访问吗?怎么做成只能iframe访问? 那你做这个页面的意义在哪。直接作为页面的模板的一部分就好。
有没有办法实现
当作看不见 2016-12-12
  • 打赏
  • 举报
回复
奇葩需求。。。不是应该不能被iframe访问吗?怎么做成只能iframe访问? 那你做这个页面的意义在哪。直接作为页面的模板的一部分就好。

61,128

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧