感谢帮助像我这样的新手用你能胜任的答案:我有一个关于从带有参数的URls重定向到没有参数的新URls的问题,可能使用.htaccess文件。 我在这样的问题上尝试过答案 htacces to redirect without params 301 Redirect of old url with parameters to a path without parametes
但我仍然不确定如何正确进行。
所以这是我的问题:旧的URL结构 http://www.mysite.com/my-files/query-qry?origen=1&destino=&aerolinea=DE&proveedor=barceloviajes&clase=F&escalas=
应该重定向到这个: http://www.mysite.com/my-files/query-qry
简而言之:我想在没有所有参数的情况下添加301重定向。什么是最好和最快的解决方案,是否有可以应用的规则?
非常感谢你的帮助!
答案 0 :(得分:2)
RewriteEngine On
RewriteCond %{QUERY_STRING} !="" #if there is a query string
RewriteCond %{QUERY_STRING} !^p=.* #wordpress users: allow post tempalinks
RewriteCond %{REQUEST_URI} !^/wp-admin.* #wordpress users: don't break admin
RewriteRule ^(.*)$ /$1? [R=301,L] #remove query string
http://briancray.com/posts/htaccess-hack-remove-url-query-strings/
答案 1 :(得分:0)
To put it short: I want to add a 301 redirection without all parameters.
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此规则:
RewriteEngine On
RewriteCond %{QUERY_STRING} .+
RewriteRule ^ %{REQUEST_URI}? [R=301,L]
答案 2 :(得分:0)
比使用final?更好,你应该使用qsdiscard标志QSD
。
对于你的情况:
RewriteCond %{QUERY_STRING} .+
RewriteRule ^my-files/query-qry my-files/query-qry [QSD,L,R=301]