如何阻止对html页面的直接访问
Posted
技术标签:
【中文标题】如何阻止对html页面的直接访问【英文标题】:How to block direct access to html page 【发布时间】:2022-01-22 13:26:29 【问题描述】:我有一个子 html(模板)products.html
,我使用 javascript/jquery 函数 .load() 将它包含在我的 index.html
页面中
现在的问题是products.html如果你输入它的url就可以直接访问,而且它单独给出一个非常丑陋的页面,所以我尝试使用JS函数windows.location
将任何试图访问它的人重定向到index.html .这种方法的问题是,当我的模板加载到我的主页中时,js 脚本会触发,并导致页面刷新。那么还有其他方法可以解决这个问题!?
【问题讨论】:
使用 .htaccess 和规则来实现 【参考方案1】:你可以定义像window.parentPage = true;
这样的变量
在 index.html 文件中。
在 products.html 页面中进行如下检查:
if(!window.parentPage)
window.location.href = "YOUR REDIRECTION PAGE"
【讨论】:
【参考方案2】:另一种选择:
<body onload="if (document.referrer == '') self.location='index.html';">
【讨论】:
@party-ring referrer 属性返回加载当前文档的文档的 URL。因此,假设您访问 mywebsite.com 并单击将您带到 mywebsite.com/products.html/ 的产品。文档引用者将是 mywebsite.com 。但是,如果您直接访问 mywebsite.com/products.html/,则您没有推荐人。你可以在这里阅读更多 - link +1 表示不错的通用方法。另请注意,我在 document.ready 中使用了它,它离开页面的速度比 onload 快。以上是关于如何阻止对html页面的直接访问的主要内容,如果未能解决你的问题,请参考以下文章
如何打开放置在iframe html中直接访问阻止目录中的pdf文件
尝试使用导入的 js 函数启动 html 页面时出现“CORS 策略已阻止从源‘null’访问脚本”错误
如何使用spring security根据角色限制对html页面的访问?