Перенаправление (301) Случайные URL-адреса

Как перенаправить (301) случайные URL-адреса, такие как /search.php?tag=Classy, ​​используя метод .htaccess. Я пробовал ниже один, который не работал.

Redirect 301 /search.php?tag=Classy http://www.domain.com/tag/classy/

person Kevin S    schedule 20.01.2013    source источник


Ответы (1)


Ваше правило перенаправления выглядит нормально. Пока это .htaccess в корне вашего сайта, он должен его найти. Однако вам также необходимо убедиться, что модуль mod_alias включен в вашем экземпляре Apache, что вы, вероятно, и делаете.

Я ошибся ранее, но да, если у вас есть RewriteRules, вам понадобится следующее:

Options +FollowSymLinks
RewriteEngine On

.. и вы упомянули, что Rewrite действительно работает.

Другая возможность заключается в том, что ваши перезаписи перекрываются с вашими перенаправлениями. Директивы mod_rewrite будут выполняться до mod_alias, независимо от порядка в вашем .htaccess.

person mikesjawnbit    schedule 20.01.2013
comment
Я пытался добавить ваше предложение, но это не сработало. mod_rewrite включен. Хотя, когда я пытаюсь RewriteCond %{HTTP_HOST} ^.*$ RewriteRule ^search\.php$ "http\:\/\/www\.domain\.com\/" [R=301,L], он работает, но перенаправляет на domain.com/?tag=Classy - person Kevin S; 20.01.2013
comment
Я добавил немного, упомянув, что любые директивы перезаписи, которые вы, возможно, добавили, могут переопределять перенаправления, которые вы хотите выполнить. Я бы порекомендовал вам опубликовать больше .htaccess, если у вас все еще есть проблемы. А если нет, напишите, что исправили! - person mikesjawnbit; 22.01.2013