重定向包含'?'的动态网址标记

时间:2013-06-28 12:00:20

标签: apache .htaccess url-rewriting

我的.htaccess文件看起来像这样。

RewriteEngine On       
RewriteRule (.*)-(.*)-(.*) view.php?title=$1&date=$2&author=$3

使用此规则,我可以重定向简单的动态网址而无需特殊字符

domain.com/abcd-June%2027th%202013-authorname

domain.com/view.php?title=abcd&date=June%2027th%202013&author=authorname

同样,我想重定向包含问号“动态网址”的动态网址?在查询字符串中 例如

http://domain.com/abcd?-June%2027th%202013-authorname

http://domain.com/view.php?title=abcd?&date=June%2027th%202013&author=authorname

怎么做? .htaccess文件中需要进行哪些更改?

1 个答案:

答案 0 :(得分:0)

使用NE标志。

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+([^-]+)-([^-]+)-(.*?)/?\s
RewriteRule ^ view.php?title=%1&date=%2&author=%3 [L,QSA,NE]