Regex 使用动态URL和问号重定向-301

Regex 使用动态URL和问号重定向-301,regex,apache,.htaccess,mod-rewrite,redirect,Regex,Apache,.htaccess,Mod Rewrite,Redirect,我的htaccess文件中有几个重定向,如 redirect 301 /detail.php?id=101 http://www.example.com/product/costume-didnt-fit-im-stuck-shirt/ 我经常使用这种方法,但这次似乎不起作用,我认为这是动态url。有没有办法将此重定向方法与此类型的URL进行匹配?您无法匹配重定向指令中的查询字符串。改用mod_rewrite规则: RewriteEngine On RewriteCond %{QUERY_S

我的htaccess文件中有几个重定向,如

redirect 301 /detail.php?id=101 http://www.example.com/product/costume-didnt-fit-im-stuck-shirt/

我经常使用这种方法,但这次似乎不起作用,我认为这是动态url。有没有办法将此重定向方法与此类型的URL进行匹配?

您无法匹配
重定向
指令中的查询字符串。改用
mod_rewrite
规则:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^id=[0-9]+
RewriteRule ^detail\.php$ http://www.example.com/product/costume-didnt-fit-im-stuck-shirt/? [L,R=301,NC]

好吧,我试试看,我有大约100个,所以我有一些工作要做:)你试着测试它的URL是什么,它的位置是什么。htaccess?www.fatgeyshirts.com/。htaccess我在评论中问了两个问题:)这是一个应该重定向的旧URL
http://www.fatguyshirts.com/detail.php?id=3
http://www.fatguyshirts.com/product/winning-fight-anorexia/