我如何防止访问带有 htacces 的文件夹中的所有 php 文件,但是当我希望通过 iframe 访问时可以正常工作?
我不希望用户通过 url 访问,因为这将是一个安全错误..
有什么答案吗?
通过 iframe 访问页面与通过 url 访问页面相同。如果您以这种方式使页面无法访问,则 iframe 也将无法加载它。
这是不可能的。你无法拥有你想要的。您可以将 iframe 视为浏览器中的浏览器。iframe 向您的服务器发出独立的新 GET 请求以获取内容的 URL,但没有任何迹象表明它正在 iframe 中使用。
但是,一旦页面已交付给客户端,您可以让页面运行一些 javascript 来检查它是否是 iframe,如果不是,则删除它自己的内容。
if (top === self) {
// not in an iframe. delete all the content
document.body.innerHTML = 'Not allowed';
}
您可以将其反转以提供不可见的内容,但如果有 javascript 使内容可见top != self
现在,当然,这只会影响内容对用户的可见性。它仍在交付中,高级用户仍然可以与之交互。这只是一点视觉技巧 - 安全性为零。