.php在添加尾部斜杠后以重写的url结尾

时间:2014-06-03 12:55:00

标签: regex .htaccess mod-rewrite url-rewriting seo

当我尝试向不存在的文件添加尾部斜杠时,我遇到了一个问题。这是我的重写规则

# remove www from url
RewriteCond %{HTTP_HOST} ^www.goautohub.com [NC]
RewriteRule ^(.*)$ http://goautohub.com/$1 [L,R=301]

#rewrite news/article name
RewriteRule ^news/([^/]*)/$ news.php?viewnews=$1 [NC,L]


#remove index from url
RewriteRule ^index\.php/?$ / [L,R=301,NC]

#remove php from url
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

我现在唯一想做的就是重写这个网址

/消息/野马-眼镜蛇模型亮点

/消息/野马-眼镜蛇模型亮点/

如果我使用类似

的东西
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]

我从Force trailing slash at end of rewritten query string发现它有效,但它搞砸了我所有的其他它已经有一个尾随斜线。它做了什么呢?

/.php /到最后。

我认为我需要一种方法将其限制在新闻页面,但我似乎无法使规则正确。

1 个答案:

答案 0 :(得分:0)

以下重写规则应该有效:

RewriteRule ^/news/(.*)/$ /news/$1 [NC,L]