在 ubuntu 上启用 htaccess apcahe

问题描述 投票:0回答:2

我在 ubuntu 上有一个 apache 服务器,其中有一个指向我的站点的虚拟主机。问题是我的 htaccess 不起作用。

在我的 apache2.conf 文件中,我有类似的内容

   <Directory />
    Options FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

    <Directory /usr/share>
        AllowOverride None
        Require all granted
    </Directory>

<Directory /var/www>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

如果我将“www”目录的AllowOverride更改为htaccess,则功能正常,但出现 403 禁止错误。请指导我我做错了什么。

问候。

php apache .htaccess ubuntu
2个回答
0
投票

你必须像这样将AllowOverride设置为all。

<Directory "/var/www">
    AllowOverride All
</Directory>

之后,如果您遇到禁止错误,那么 htaccess 文件中可能有错误。删除htaccess文件中的代码,然后开始逐块编写代码。通过此您可以调试 htaccess 文件中的错误。想要了解更多信息,你可以看看这个。

https://askubuntu.com/questions/429869/is-this-a- Correct-way-to-enable-htaccess-in-apache-2-4-7-on-ubuntu-12-04#answer- 429931


0
投票

更新您的 Apache 配置 允许

.htaccess
文件通过以下命令覆盖指令

<Directory /var/www>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

确保 .htaccess 文件具有可供 Web 服务器读取的正确权限:

sudo chmod 644 /var/www/your-site/.htaccess

调整通往站点根目录的目录的权限:

sudo chmod 755 /var/www
sudo chmod 755 /var/www/your-site

重新启动Apache

sudo service apache2 restart

然后更新.htaccess

RewriteEngine On
RewriteRule ^test$ test.html [L]

如果仍然遇到问题,请检查 Apache 错误日志 (/var/log/apache2/error.log) 中是否有任何可以深入了解问题的特定错误消息。

注: 通过执行这些步骤,您应该能够启用

.htaccess
文件的功能,而不会遇到 403 Forbidden 错误。

#阿帕奇时代

© www.soinside.com 2019 - 2024. All rights reserved.