我的mod_rewrite不起作用,出了什么问题?

时间:2010-03-14 18:38:26

标签: mod-rewrite apache2

我有以下重写规则,但当我尝试使用它时,根本没有任何东西。我将文件放在server.blahblahblah.com/todo目录中,以下是我的.htaccess文件:

Options +FollowSymLinks
Options +Indexes

RewriteEngine On
RewriteBase /

RewriteRule ^tasks/view/([0-9]+)?/$ controller.php?task=view&id=$1
RewriteRule ^tasks/view/([0-9]+)\.xml$ controller.php?task=viewxml&id=$1
RewriteRule ^tasks/new?/$ controller.php?task=new
RewriteRule ^tasks/delete/([0-9]+)?/$ controller.php?task=delete&id=$1
RewriteRule ^tasks/completed/([0-9]+)?/$ controller.php?task=complete&id=$1
RewriteRule ^tasks?/$ controller.php?task=home

有谁知道为什么这根本不起作用?

谢谢,

1 个答案:

答案 0 :(得分:0)

如果没有任何反应,可能是您没有为您的网站启用.htaccess文件。为此,请更改您的网站配置(/etc/apache2/sites-enabled/<yoursite>)以包含AllowOverride All而不是AllowOverride None(默认值)。但请注意性能劣势 - 您还可以将规则直接放在站点配置中。

如果无法解决问题,请查看/var/log/apache2/*中的Apache日志。