别名在 Apache2.4 上不起作用

别名在 Apache2.4 上不起作用

我已经从较早的 Apache2 升级到最新的 Apache 2.4。我之前的设置在 sites-available 目录中的 default.conf 文件中有以下别名:

Alias /weewx /home/weewx/public_html
<Directory "/home/weewx/public_html">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

在新的 Apache 2.4 设置中,我已将以下内容添加到 sites-available 中的 000-default.conf 中:

Alias /weewx /home/weewx/public_html

<Directory /home/weewx/public_html>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
</Directory>

但现在我收到 403 错误 - “您无权访问此服务器上的 /weewx”。我尝试将我的新别名和目录条目移动到 mods-available 目录中的 alias.conf 文件中,但仍然出现 404 错误。

我的目录条目有问题吗,或者别名和目录放错了位置?

答案1

您需要添加

Require all granted

授予新目录容器对该目录的访问权限。这将取代旧的

Order allow,deny
Allow from all

Apache 文档了解更多信息。

答案2

apache 2.4 中的所有别名都必须在 /etc/apache2/mods-enabled/alias.conf 文件中进行配置,它们在虚拟主机文件中会被忽略。

相关内容