[英]prevent direct url access
我有一个网站,所有连接(与数据库和其他连接)都在一个文件夹中。 尽管在受限制的页面上有一个会话来防止未登录的用户,但是如果键入完整的url,则可能会到达这些文件(即使php确实显示了任何东西,我猜这也不是一件好事)。 而且文件夹本身可以看成是服务器上的目录,这非常糟糕。
www.mysite.com/connectionfolder
我该如何解决这个问题? 谢谢!
Apache:在您的.htaccess
根文件中添加以下行
Options -Indexes
如果现有.htaccess
文件中已经有一行Options Indexes
,那么您可以简单地使用Options -Indexes
对其进行修改
这将使Apache阻止直接目录访问。
如果使用Apache,则将.htaccess文件放在根Web目录中(如果尚未存在)。 然后将其放入文件中:
Options -Indexes
更多信息: https : //httpd.apache.org/docs/current/mod/core.html#options
您还可以将用户重定向到“安全”页面之外
<?php
//...Valid user check
if(!$validuser)
{
header("Location: /");
exit;
}
<?php header("Status: 404 Not Found"); ?>
进行会话验证后,将其显示为404页面错误,提示页面未找到
例如,您可以将其放入
if(!$user_loggedin) {
header("Status: 404 Not Found");
} else {
echo "welcome to your page ....";
}
如果用户未登录,上面的代码将生成PAGE NOT FOUND ERROR。这意味着,任何看到该错误的人都会认为该页面根本不存在
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.