htaccess малко помощ

BlackFriday

Well-Known Member
Пичове тука виждам зор с един редирект на едни стари урл които имат много баклинкове към тях и искам да отварят новите:

стари: ---> нови

/?order_by=da ----------> /cat/authority-domains/
/index.php?cat=45 -----> /cat/brandable-domains/
/?order_by=moz ------> /cat/authority-domains/
/?age_min=1 ----------> /cat/premium-domains/

пробвах така:


RewriteEngine On
RewriteRule ^?order_by=da?$ $1/cat/authority-domains/$2 [R=301,L]

но гърми сайта

мерси предварително
 
/?order_by=moz ------> /cat/authority-domains/
Нещо подобно на това не сработва ли при теб :
Код:
RewriteCond %{QUERY_STRING} ^?order_by=moz$
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^index\.php$ /cat/authority-domains? [R=301,L]
 
Код:
RewriteCond %{QUERY_STRING} ^order_by=da
RewriteRule ^(.*) /cat/authority-domains/ [R=301,L]
 
Код:
RewriteCond %{QUERY_STRING} ^order_by=da
RewriteRule ^(.*) /cat/authority-domains/ [R=301,L]


супер си :) обаче има един тънък момент работи но урл става така: сайта.ком/cat/authority-domains/?order_by=da а трябва да е сайта.ком/cat/authority-domains/

как да го фиксна :)
 
Код:
RewriteCond %{QUERY_STRING} ^order_by=da
RewriteRule ^(.*) /cat/authority-domains/? [R=301,L]

въпросителният знак прави магията старите параметри да не се предават.
При някои версии на Апаха имаше флаг от рода на QSD, QSF, QSA... или бали го нещо с QS* беше, което премахва ненужните параметри при редирект.
 

Горе