我有一个非常具体的问题。标题给出了许多其他有正确答案的问题,但是我不知道如何将其适应我自己的重写规则。
我的 .htaccess 看起来像这样:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^[^/]*/?$ index.php [NC,L]
RewriteCond %{REQUEST_URI} !(^/dev/zeroyear/$)
RewriteRule ^dev/zeroyear/([^/]+)/?([^/]*)/?([^/]*)/?([^/]*)/?$ /dev/zeroyear/index.php?var1=$1&var2=$2&var3=$3&var4=$4 [L,QSA]
我希望以下 2 个 URL 重定向到同一页面:
http://timesheep.name/dev/zeroyear/news
http://timesheep.name/dev/zeroyear/news/
由于我放了问号,最后一个重写规则导致了 500,但日志什么也没说。如果我将其更改为:
RewriteRule ^dev/zeroyear/([^/]+)/([^/]*)/?([^/]*)/?([^/]*)/?$ /dev/zeroyear/index.php?var1=$1&var2=$2&var3=$3&var4=$4 [L,QSA]
错误消失了,但http://timesheep.name/dev/zeroyear/news将返回 404。
我能做些什么呢?