【问题标题】:Hidden Rules in Apache Level?Apache 级别的隐藏规则?
【发布时间】:2021-01-04 16:00:39
【问题描述】:

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

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

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

“https://www.example.com/myinfo.php”是可访问的。

“https://www.example.com/myinfo”如果没有任何 .htaccess + 规则应该是无法访问的。

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

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

感谢您提供的任何信息。

【问题讨论】:

  • 这能回答你的问题吗? Removing the .php extension with mod_rewrite
  • 听起来你可能在你的虚拟主机中启用了multiviews。尝试关闭它们,重新启动 apache 并检查问题是否已解决。也可以直接在您的虚拟主机中重写规则。
  • 多视图一定是问题所在。或者至少一个重写规则。

标签: php apache .htaccess centos7 whm


【解决方案1】:

正如Magnus Eriksson 所说:您可能在您的虚拟主机中启用了multiviews。尝试关闭它们,重新启动 apache 并检查问题是否已解决。也可以直接在您的虚拟主机中重写规则。

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

编辑:

因为你链接了你的 httpd.conf 文件,我发现了这个:

<Directory "/">
    
      AllowOverride All
    
    Options MultiViews FollowSymLinks IncludesNOEXEC Indexes ExecCGI
</Directory>

改成:

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

【讨论】:

  • 感谢您的回答。我已经看过 Multiviews 但它并没有改变任何东西。我还按照您的建议检查了 httpd.conf 和 ea4_main.default 文件,但我真的看不出里面有什么问题。这种自定义规则是什么样的?我不是服务员。我也会在 cPanel 论坛上发布我的问题,谢谢您的建议。
  • @joe,除此之外您可能无法得到答案。因为 MultiViews 是唯一可见的罪魁祸首。在您的问题中提供 httpd.conf 文件。还有 ea4.conf.local。
  • @joe,我请求您在此处发布 cpanel 论坛帖子,以便我可以更好地为您提供帮助。
  • @joe,请参阅stackoverflow.com/questions/16956810/…,它可能会帮助您找到哪个文件具有 MultiViews 设置。
  • 这是我的 httpd.conf controlc.com/de0a7ad4 和 ea4_main.default controlc.com/05228245
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-15
  • 2011-09-23
  • 1970-01-01
  • 2011-10-06
  • 2013-04-19
相关资源
最近更新 更多