Попробуйте это - работает отлично здесь:
RewriteCond %{HTTP_HOST} ^(mysite\.com|www\.mysite\.com)$ [NC]
RewriteRule .* http://store.mysite.com%{REQUEST_URI} [R=301,L]
- Здесь я поместил 2 доменных имени в одно условие, используя шаблон регулярных выражений.
- Я также немного изменил RewriteRule (именно так я и предпочел это сделать).
- Вы также можете добавить сюда флаг
QSA
, так как это перенаправление 301 (зависит от ваших реальных URL) - [R=301,QSA,L]
.
Другие подходы:
1) Отдельное условие для каждого доменного имени (необходимо указать, что логика OR
должна использоваться вместо значения по умолчанию AND
):
RewriteCond %{HTTP_HOST} ^mysite\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.mysite\.com$ [NC]
RewriteRule .* http://store.mysite.com%{REQUEST_URI} [R=301,L]
2) То же, что и выше ... но вместо сравнения с регулярным выражением используется сравнение в обычном тексте:
RewriteCond %{HTTP_HOST} =mysite.com [NC,OR]
RewriteCond %{HTTP_HOST} =www.mysite.com [NC]
RewriteRule .* http://store.mysite.com%{REQUEST_URI} [R=301,L]