我有这个重写条件 我用它来抓住slu ur url并搜索一个像这样的博客文章:
http://localhost:8080/blog/my-first-post
所以我抓住了slug然后寻找帖子并展示它。 现在它接受这两种形式
http://localhost:8080/blog/my-first-post
http://localhost:8080/blog/my-first-post/
我应该如何更改.htaccess,以便它总是在末尾添加或重定向斜杠。
我应该如何更改它以删除斜线?
这是我现在拥有的.htaccess,我在博客目录中有它:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
答案 0 :(得分:1)
您可以用这个替换当前的htaccess代码
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
# add trailing slash
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ $1/ [R=301,L]
# remove trailing slash
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.+?)/$ $1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
现在,它添加了斜杠。如果您要删除它,评论 add trailing slash
块行和取消注释 remove trailing slash
块行