Я хочу внутренне перенаправить все со static.domain.com на www.domain.com.Обратите внимание, что static.domain.com является существующим поддоменом, я не хочу использовать подстановочные знаки.Я использовал этот код в поддомене .htaccess
RewriteCond %{HTTP_HOST} ^static\.domain\.com
RewriteRule ^(.*)$ http://domain.com/$1 [R=301]
, но я получаю сообщение об ошибке:
Запрещено
У вас нет прав доступа/ на этом сервере.
Заранее спасибо!
Редактировать: в моем корне у меня есть index.php, который обрабатывает мою инфраструктуру приложения.
похожеэто:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?rt=$1 [L,QSA]
Мой статический поддомен содержит только файл .htaccess, который выглядел именно так:
RewriteCond %{HTTP_HOST} ^static\.domain\.com
RewriteRule ^(.*)$ http://domain.com/$1 [R=301]
Я добавил RewriteEngine On
, и теперь он перенаправляет меня извне (если я запрашиваюstatic.domain.com/css/style.css переводит меня на domain.com/css/style.css).Я хотел бы перенаправить внутренне (адрес в браузере не должен меняться).
Решение
Изучил немного флаги apache RewriteRule и нашел решение.Я использовал флаг P для прокси.Вот файл .htaccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^static\.outletika\.com
RewriteRule ^(.*)$ http://outletika.com/$1 [R=301,P]