我正在构建一个使用许多文件的网站,其中许多文件永远不应该通过浏览器访问。例如,每个MYSQL查询页面的用户都有一个mysql_conect脚本,但如果用户通过URL直接导航到该页面(example.php / mysqlconnect.php),屏幕将返回空白..如何让它成为浏览器当用户尝试直接访问这些文件时,会返回401权限错误吗?
答案 0 :(得分:2)
没有必要这样做。除非你回应这些价值观,否则你是安全的。
除非被告知,否则PHP不会在浏览器中呈现。许多(所有)脚本执行您正在解释的内容。
答案 1 :(得分:1)
正如@Paul所说,没有必要这样做,如果用户将浏览器指向example.php / mysqlconnect.php,用户将永远不会看到php文件的内容,但如果你想要,你可以放弃。 htaccess文件位于mysql_connect.php脚本所在的同一目录中,其中包含以下内容:
<Files mysql_connect.php>
order allow,deny
deny from all
</Files>
或者,如果您想限制对整个目录的访问,则.htaccess文件的内容必须是:
deny from all
或者
Options All -Indexes
您可以在此处查看.htaccess文件中的更多配置选项:
答案 2 :(得分:0)
在特殊情况下,您可以将文件放在任何位置,并将以下代码添加到文件中
if(basename($_SERVER['PHP_SELF']) == 'mysqlconnect.php')
header('HTTP/1.1 401 Unauthorized');
exit;
因此,如果直接请求文件,它将返回401状态代码并退出。