繁体   English   中英

防止直接访问URL

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM