我正致力于保护我的网络服务器。 我不希望人们能够执行他们不应该执行的文件。
我被告知我应该拒绝所有可以执行的白名单文件。 这样可行。问题是,当我访问我的domain.com时,它不会执行example.com/index.php。如果我输入example.com/index.php它可以工作。
这是我的htaccess文件
Options -Indexes
Order deny,allow
Deny from all
<Files /index.php>
Allow from all
</Files>
<Files "index.php">
Allow from all
</Files>
<Files "teacher_login.php">
Allow from all
</Files>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
答案 0 :(得分:0)
你知道什么是阻止人们执行不应该执行的脚本的更好方法吗?
根本不要把它们放在网上。
将public_html
的这些脚本放在服务器上,突然间没有人可以访问它们!不需要.htaccess
hacks就像你正在尝试的那样。更好的是,它们仍然可以访问服务器本身 - 例如。
require($_SERVER['DOCUMENT_ROOT']."/../hidden-scripts/something.php");
好多了。