Apache级别中的隐藏规则



刚刚为我的新网站项目从一家信誉良好的托管公司获得了一台新的专用服务器。

它使用Apache 2.4+PHP 7.4包运行Centos 7.9/WHM。PHP-FPM作为处理程序。

我对我的网站文件夹中的一些php文件进行了一些测试,我注意到任何.php文件都可以在没有他的扩展名的情况下访问。没有任何.htaccess文件!

"https://www.example.com/myinfo.php"可访问。

"https://www.example.com/myinfo"如果没有.htaccess+规则,应该是不可访问的。

这让我很恼火,因为我知道这会给我的网站项目带来一些问题。

由于我没有使用任何htaccess文件,这些规则可能在哪里?

谢谢你能给我的任何信息。

正如Magnus Eriksson所说:你可以在vhost中启用多视图。尝试关闭它们,重新启动apache并检查问题是否已解决。也可以直接在你的vhost中重写规则。

由于您已经安装了cPanel,我猜是/etc/httpd/httpd.conf/var/cpanel/templates/apache2_4/ea4_main.default。在编辑ea4_main.default之前,请将其复制到ea4_main.local:cp -a /var/cpanel/templates/apache2_4/ea4_main.default /var/cpanel/templates/apache2_4/ea4_main.local,然后仅编辑ea4_main.local文件。编辑它时请小心,因为它可能会把很多事情搞砸。如果你正在使用cPanel,我建议你在cPanel论坛上提问,因为这一定是一个与cPanel相关的问题而且,如果出现任何问题,我不负责任,我已经警告过你了

编辑:

由于您链接了httpd.conf文件,我发现了以下内容:

<Directory "/">

AllowOverride All

Options MultiViews FollowSymLinks IncludesNOEXEC Indexes ExecCGI
</Directory>

更改为:

<Directory "/">

AllowOverride All

Options -MultiViews +FollowSymLinks +IncludesNOEXEC +Indexes +ExecCGI
</Directory>

最新更新