для 301 перенаправления всех зеркал на главное и заодно для удаления www из url-а можно написать в .htaccess вот такую штуку:
RewriteEngine On RewriteCond %{HTTP_HOST} ^(www.)?mirror1.ru$ [OR] RewriteCond %{HTTP_HOST} ^(www.)?mirror2.ru$ [OR] RewriteCond %{HTTP_HOST} ^www.main-mirror.ru$ [NC] RewriteRule ^(.*)$ http://main-mirror.ru/$1 [R=301,L]
У Joomla есть свой .htaccess, но если добавить эти правила сразу после строчки «RewriteEngine On» и перед правилами Joomla, то всё нормально работает. Вот что получается:
... ## Can be commented out if causes errors, see notes above. Options +FollowSymLinks # # mod_rewrite in use RewriteEngine On RewriteCond %{HTTP_HOST} ^(www.)?mirror1.ru$ [OR] RewriteCond %{HTTP_HOST} ^(www.)?mirror2.ru$ [OR] RewriteCond %{HTTP_HOST} ^www.main-mirror.ru$ [NC] ########## Begin - Rewrite rules to block out some common exploits ## If you experience problems on your site block out the operations listed below ## This attempts to block the most common type of exploit `attempts` to Joomla! ...
проверить как работает редирект можно здесь.
Для Яндекса также можно прописать главное зеркало через дерективу Host, в соответствии с этими правилами.
вообще, для измененных ссылок тоже редирект полезно прописывать
Комментарий by Федор — 16 мая 2011 @ 1:46