.htaccess HTACCES不带参数的重写规则
我想从我的旧url进行301重定向:www.test.com/?page=mypage&lang=mylanguage 到新的www.test.com/mylanguage/mypage 我用的是:.htaccess HTACCES不带参数的重写规则,.htaccess,redirect,url-rewriting,url-redirection,http-status-code-301,.htaccess,Redirect,Url Rewriting,Url Redirection,Http Status Code 301,我想从我的旧url进行301重定向:www.test.com/?page=mypage&lang=mylanguage 到新的www.test.com/mylanguage/mypage 我用的是: RewriteCond %{QUERY_STRING} ^page=mypage&user_lang=lang$ [NC] RewriteRule ^(.*)$ http://test.joskin.com/lang/mypage [R=301,L,NE] 但当我点击我的旧链接时,它会将我
RewriteCond %{QUERY_STRING} ^page=mypage&user_lang=lang$ [NC]
RewriteRule ^(.*)$ http://test.joskin.com/lang/mypage [R=301,L,NE]
但当我点击我的旧链接时,它会将我重定向到
如何从新url中删除这些参数
致以最诚挚的问候。你们真的很亲密!改用这个:
RewriteCond %{QUERY_STRING} page=mypage&lang=mylanguage$ [NC]
RewriteRule ^(.*)$ http://test.joskin.com/lang/mypage? [R=301,L,NE]
我在这里所做的更改是在重写的URL末尾添加一个?
。重定向URL末尾的?
已存在,因此查询字符串不会再次出现在URL末尾
我从查询字符串中删除了^
,它是不需要的
我还更新了查询以匹配您在问题顶部显示的URL。如果你想把它换回来,我就把它留给你
在测试此功能之前,请确保清除缓存。。您已经非常接近了!改用这个:
RewriteCond %{QUERY_STRING} page=mypage&lang=mylanguage$ [NC]
RewriteRule ^(.*)$ http://test.joskin.com/lang/mypage? [R=301,L,NE]
我在这里所做的更改是在重写的URL末尾添加一个?
。重定向URL末尾的?
已存在,因此查询字符串不会再次出现在URL末尾
我从查询字符串中删除了^
,它是不需要的
我还更新了查询以匹配您在问题顶部显示的URL。如果你想把它换回来,我就把它留给你
在测试此功能之前,请确保清除缓存。。非常感谢!多谢各位!