Подтвердить что ты не робот

Htaccess переписать на основе имени хоста или имени домена

У меня есть два разных домена (скажем, www.site1.com и www.site2.com), которые указывают на тот же сервер хостинга.

Мне нужны два разных имени домена, потому что я хочу использовать первый для итальянского контента, а второй для английского содержимого. Содержимое одного и того же, если только для языка, но домены должны быть разными.

Итак, я бы хотел написать правило, которое позволяет мне переводить из:

  • www.site1.com to /?lang=it

  • www.site2.com to /?lang=en

Обычно я использую одно и то же имя домена для переписывания разных языков с www.site.com/it/ до /?lang=it (конечно, прозрачная переписывание - пользователь не видит никакого другого URL-адреса).

Я хотел бы достичь того же, используя разные домены, но не могу понять, как... Я работаю над ним часами, и я не могу добиться того, чего хочу!

Обычно я использую это:

RewriteCond %{REQUEST_URI} /([a-z]{2})
RewriteRule ^([a-z]{2})[/]*$ /index.php?lang=$1 [NC,QSA]

Я не могу получить эту работу, чтобы использовать разные домены:

RewriteCond %{HTTP_HOST} ^www.site1\.com [NC]
RewriteCond %{REQUEST_URI} !^/index.php?lang=it
RewriteRule ^(.*)$ /index.php?lang=it [NC,QSA]

RewriteCond %{HTTP_HOST} ^www.site2\.com [NC]
RewriteCond %{REQUEST_URI} !^/index.php?lang=en
RewriteRule ^(.*)$ /index.php?lang=en [NC,QSA]
4b9b3361

Ответ 1

Лоуренс Череун - Спасибо, что он работает как шарм! Теперь он работает:

RewriteCond %{HTTP_HOST} ^www\.site1\.com [NC] 
RewriteRule ^(.*)$ index.php?lang=it [NC,QSA] 
RewriteCond %{HTTP_HOST} ^www\.site2\.com [NC] 
RewriteRule ^(.*)$ index.php?lang=en [NC,QSA] 

Конечно, я проверяю перенаправление www перед этим правилом.

Спасибо!