【发布时间】:2012-08-21 21:06:54
【问题描述】:
我怎样才能让mod_rewrite 重定向到某个页面,或者如果没有其他规则得到满足,可能只是抛出 404?这是我的.htaccess 文件中的内容:
RewriteEngine on
RewriteRule ^\. / [F,QSA,L]
RewriteRule ^3rdparty(/.*)$ / [F,QSA,L]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^((images|upload)/.+|style.css)$ $1 [L]
RewriteRule ^$ special [QSA]
RewriteRule ^(special|ready|building|feedback)/?$ $1.php [QSA,L]
RewriteRule ^(ready|building)/(\d+)/?$ show_property.php?type=$1&property_id=$2 [QSA,L]
RewriteRule . error.php?code=404 [QSA,L]
如果用户尝试访问此处未明确指定的任何内容,则应该将用户发送到error.php(顺便说一句,抛出 404 的正确方法是什么?)。但是,它将用户从每个页面发送到error.php。如果我删除最后一条规则,其他一切都正常。
我做错了什么?
【问题讨论】:
标签: apache mod-rewrite