.htaccess mod_用最终斜杠重写

.htaccess mod_用最终斜杠重写,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我的.htaccess文件如下所示: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)/$ ?action=$1 [QSA,L] 如果我用/结束我的所有URL,它就可以正常工作。例如http://localhost/test/test2/test3/。 但是如果我忘了放/在最后,我会得到找不到的错误。。。我试图调整这个重写规则,但无

我的.htaccess文件如下所示:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)/$ ?action=$1 [QSA,L]
如果我用
/
结束我的所有URL,它就可以正常工作。例如
http://localhost/test/test2/test3/
。 但是如果我忘了放/在最后,我会得到找不到的错误。。。我试图调整这个重写规则,但无法使其双向工作(有final/和没有final/)


有什么想法吗?

使用
操作符将其设置为可选:

RewriteRule ^(.*)/?$ foo.php?action=$1 [QSA,L] 
。。。或者干脆完全移除,因为您似乎根本不需要它:

RewriteRule ^(.*)$ foo.php?action=$1 [QSA,L] 
。。。甚至:

RewriteRule ^ foo.php?action=$0 [QSA,L]