在我的.htaccess文件中,我正在使用代码:
RewriteEngine on
RewriteRule ^learn/(.*?)/(.*?)/ /learn.php?lang=$1&topic=$2
RewriteRule ^videos/(.*?)/(.*?)/ /video.php?lang=$1&topic=$2
工作正常。但它适用于http://domain.com/learn/v1
和http://domain.com/learn/v1/
(注意斜线变化)。
我想将非斜杠版本重定向到斜杠版本,保持上面的内部重定向。我试图添加一个RewriteRule来做到这一点,但后来它给了我404.
任何帮助都将不胜感激。
答案 0 :(得分:1)
尝试:
RewriteEngine on
## Adding a trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule [^/]$ %{REQUEST_URI}/ [L,R=302]
# internal rewrites
RewriteRule ^learn/(.*)/(.*)/$ learn.php?lang=$1&topic=$2 [L,QSA]
RewriteRule ^videos/(.*)/(.*)/$ video.php?lang=$1&topic=$2 [L,QSA]