Практические решения

Перенаправление на нужный домен в зависимости от языка с помощью .htaccess

Joomla

Перенаправление Joomla сайта на нужный домен с помощью .htaccess

В процессе разработки сайта для туристической компании на Joomla, была поставлена задача организовать двуязычную версию и направлять пользователей со старых доменов в соответствующую языковую версию на новом домене. Воспользовавшись приятным нововведением Joomla 1.7, позволяющим связывать пункты меню разных языков друг с другом для более эффективной организации многоязычности (в Joomla 1.6 можно было попасть только на стартовую страницу др.языковой версии), удалось организовать полноценную многоязычность сайта. К домену нового сайта yourdomain.travel в зависимости от выбранного языка добавлялся префикс /ru/ или /en/. Однако в наличии был старый домен yourdomain.ru и yourdomain.com, откуда необходимо направлять пользователей на новый сайт в зависимости от языка браузера. То есть, русскоговорящего посетителя, у которого в настройках браузера выставлен русский язык, нужно направлять на ruscovery.travel/ru/, а всех остальных пользователей, имеющих иной язык в браузере, направлять в англоязычную версию сайта ruscovery.travel/en/.

Но как это сделать? Ведь в настройках Joomla 1.7 нет возможности имитации языковой версии в каждый домен. Быстрое и простое решение - воспользоваться волшебными настройками .htaccess, прописав следующее правило:

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/$ [NC]
RewriteCond %{HTTP:Accept-Language} (ru) [NC]
RewriteRule .* http://yourdomain.travel/ru [R=302,L]
RewriteCond %{REQUEST_URI} ^/$ [NC]
RewriteRule .* http://yourdomain.travel/en [R=302,L]

То есть, делаем проверку - если язык ru, направляем на домен http://yourdomain.travel/ru, если иной другой, то пользователь отправляется на http://yourdomain.travel/en. Вот такая вот арифметика, господа.

Выражается благодарность reg-ad-site и era за данное решение.

Eugene Sivokon
Предприниматель, менеджер проектов, Joomla-энтузиаст. Занимаюсь созданием сайтов с 2002 года. Координатор нескольких Joomla проектов. Обожаю путешествовать, интересуюсь историей и изучаю иностранные языки.
timeweb

Заработок в сети

  • Sape - биржа ссылок