使用 WordPress 安装打开 Apache2 中的“/server-status”会出现“403 Forbidden”错误响应

使用 WordPress 安装打开 Apache2 中的“/server-status”会出现“403 Forbidden”错误响应

我一直试图在由 WordPress 安装支持的网站上的 Apache2 中打开“/server-status”,当我尝试访问“mysite.com/server-status”时,它提供“403 Forbidden”错误响应。在我的服务器上使用 WordPress 安装 LAMP 后,我在 Apache2 中启用了“mod_status”。我确保“/etc/apache2/mods-enabled/status.conf”中的服务器状态配置文件正确无误。当我通过 lynx 从本地主机和我的家用电脑(其 IP 被允许访问位置“/server-status”)检查“mysite.com/server-status”时,它返回“403 Forbidden”响应。我读过这篇文章访问 Apache 2.2.22 上的服务器状态时出现禁止访问(403)的情况然而,它已经有近十年的历史了,自本文撰写以来,Apache2 也发生了一些变化,现在有“Require”指令代替了“Order-Deny-Allow”指令。以下是 status.conf 文件、apache2.conf 文件、虚拟主机文件和 .htaccess 文件中的片段:

/etc/apache2/mods-enabled/status.conf:

 <Location /server-status>
     SetHandler server-status
     <RequireAll>
         Require host mysite.com
         Require ip xx.xx.xx.xx
     </RequireAll>
 </Location>
/etc/apache2/apache2.conf:

<Location /server-status>
    SetHandler server-status
    <RequireAll>
        Require host mysite.com
        Require ip xx.xx.xx.xx
    </RequireAll>
</Location>
/etc/apache2/sites-enabled/virtual-host.conf:
 
<Location /server-status>
   SetHandler server-status
   <RequireAll>
        Require host mysite.com
        Require ip xx.xx.xx.xx
   </RequireAll>
</Location>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^(server-status|server-info) - [L]
#RewriteCond %{REQUEST_URI} /server-status - [L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

正如您所看到的,我正在使用 .htaccess 文件,并且有两种方法来提供“/server-status”页面,其中一种被注释掉了。

谁能给我提供一个解决方案,以便我最终可以访问 Apache2 服务器状态?

答案1

我使用的是 Apache-2.4。我只参考了有关 Apache-2.2 的文章,因为它与我的问题相关。我没有使用 2.2。这与我升级软件无关,而是配置我的安装以便我可以看到“/server-status”。

相关内容