htaccess使用带有静态URL重定向的通配符重写吗?

时间:2018-09-29 04:20:52

标签: .htaccess redirect mod-rewrite

我下面有一个htaccess文件,该文件将重写规则与静态301重定向结合在一起。

Options -MultiViews
Options +FollowSymlinks
RewriteEngine On

#ModRewrites
RewriteCond     %{HTTP_HOST}     ^example\.com$ [NC]
RewriteRule     ^aboutus/$        aboutus.php
RewriteRule     ^contact/$        contact.php
RewriteRule     ^terms/$          terms.php
RewriteRule     ^view/$          view.php
RewriteRule     ^view/([^/]+)/   view.php?id=$1 [QSA]
RewriteRule     ^group/([^/]+)/  group.php?id=$1 [QSA]

#PermanentRedirects
Redirect 301   /views/        http://www.example.com/view/
Redirect 301   /view/313/     http://www.example.com/view/251/
Redirect 301   /view/510/     http://www.example.com/view/251/
Redirect 301   /view/986/     http://www.example.com/view/251/
Redirect 301   /view/419/     http://www.example.com/view/251/
Redirect 301   /view/583/     http://www.example.com/view/251/
Redirect 301   /view/712/     http://www.example.com/view/251/
Redirect 301   /view/358/     http://www.example.com/view/251/
Redirect 301   /view/841/     http://www.example.com/view/251/
Redirect 301   /view/384/     http://www.example.com/view/251/
Redirect 301   /view/976/     http://www.example.com/view/251/
Redirect 301   /view/810/     http://www.example.com/view/188/
Redirect 301   /view/270/     http://www.example.com/view/188/
Redirect 301   /view/627/     http://www.example.com/view/188/
Redirect 301   /view/890/     http://www.example.com/view/188/
Redirect 301   /view/954/     http://www.example.com/view/188/
Redirect 301   /view/713/     http://www.example.com/view/188/
Redirect 301   /view/553/     http://www.example.com/view/188/
Redirect 301   /view/101/     http://www.example.com/view/188/
Redirect 301   /view/489/     http://www.example.com/view/188/
Redirect 301   /view/899/     http://www.example.com/group/2/
Redirect 301   /view/904/     http://www.example.com/group/2/

#ModRewrites下的页面工作正常。

但是,当我尝试访问#PermanentRedirects下的页面时,用于查看重定向的视图效果很好。但是,最后两行无法按我的预期工作。

http://example.com/view/904

它重定向到

http://example.com/group/2/?id=904

并最终显示404错误。另外,似乎QSA应用于此处,我不想这样做。我只想要一个简单的普通静态301重定向。

请帮助我,非常感谢。

0 个答案:

没有答案