2012-06-06 6 views
0

Написание некоторых регулярных выражений для файла .htaccess. Получил вторую половину работы, но первая половина меня заводит. Любые гуру регулярного выражения хотят протянуть руку?htaccess ReWriteRule в новый домен

<IfModule mod_rewrite.c> 
Options +FollowSymLinks 
RewriteEngine on 
RewriteRule (*./) www.domain1.com/ [R=301,L] # This is not working 
RewriteRule (.*) $1.domain2.com/ [R=301,L] # This is working 
</IfModule> 

Что я хочу для всех URL-адресов, таких как: www. test .com/example, чтобы перейти к примеру. domain2 .com/(Эта часть работает).

Но я также хочу основной URL-адрес www. test .com/перейти на www. domain1 .com/(эта часть НЕ работает).

Я знаю, что это прямо перед моим лицом, но это был долгий день, и у меня есть мозговой пердит).

ответ

0

Это похоже на первое регулярное выражение, в котором поиск (*. /) Выключен. Я думаю, что это должно быть (. * /).

Что-то вроде этого

RewriteRule ^(.*)$ http://www.new-domain.com/$1 [R=301,L]

Если перенаправить запросы на новой области.

Для получения дополнительной информации, которую я хотел бы проверить этот сайт для HTAccess помощи http://perishablepress.com/stupid-htaccess-tricks/#redirects и это для быстрого использования теста-регулярного выражения этого http://rubular.com/

0

Попробуйте заменить свои правила с этим:

RewriteRule ^$ www.domain1.com/ [R=301,L] 
RewriteCond %{HTTP_HOST} .* 
RewriteRule ^(.+)$ http://$1.domain2.com/ [R=301,L] 
+0

Хахаха, что не нужен - рад слышишь, что это сработало, хотя :) Вы можете принять ответ, если он вам помог. – Ansari

+0

Кроме того, я предлагаю отредактировать ваш комментарий и удалить свой идентификатор электронной почты, если кто-то решит отправить вам электронное письмо и что-то потребует: P или добавить вас в список спама или что-то еще. – Ansari

Смежные вопросы