Nic*_*roi 5 mod-rewrite debian .htaccess apache-2.2
我正在尝试通过 .htaccess 文件使用 mod_rewrite 并且我有一个大问题,似乎没有读取 .htaccess 文件。这台机器运行的是 Debian 5.0,它使用的是稳定的 apache2 包。
我已按照此页面的说明进行操作:http : //www.debian-administration.org/articles/136。像这样启用 mod_rewrite:
a2enmod rewrite
Run Code Online (Sandbox Code Playgroud)
在我的 /etc/apache2/apache2.conf 文件中,我添加了以下内容:
<Directory "/var/www">
AllowOverride ALL
Options FollowSymLinks
</Directory>
Run Code Online (Sandbox Code Playgroud)
在根目录中,我创建了一个包含以下内容的 .htaccess 文件:
RewriteEngine on
RewriteRule ^test$ foo.html
Run Code Online (Sandbox Code Playgroud)
我从类似问题的答案中尝试了很多建议,但无济于事。我在访问 foo.com/test 时收到的错误消息是 404 Page Not Found。每个人都可以读取所有文件。直接访问foo.html是没有问题的。我还尝试将垃圾放在另一个 .htaccess 中,看看 apache 是否会抱怨它,没有任何改变。也许我只是太累了!
谢谢
小智 3
如果您在访问包含 .htaccess 文件且其中包含垃圾的目录时没有收到 500 错误,则 Apache 不会读取您的 .htaccess 文件。
您是否在 /etc/apache2/sites-available/default 文件(或用于虚拟主机的任何文件)中定义了一个站点,该站点会覆盖该目录的 AllowOverride All 定义?