Я хочу написать правила в .htaccess для перенаправленияSubdomain Перенаправление
http://www.dir.domain.com
http://dir.domain.com
http://www.domain.com/dir
они должны перенаправить
http://domain.com/dir
Заранее спасибо ...
Я хочу написать правила в .htaccess для перенаправленияSubdomain Перенаправление
http://www.dir.domain.com
http://dir.domain.com
http://www.domain.com/dir
они должны перенаправить
http://domain.com/dir
Заранее спасибо ...
Хитрость здесь заключается в использовании .htaccess
файл в вашем DOCROOT
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?dir\.domain\.com$
RewriteRule ^.* http://domain.com/dir/$0 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule ^dir/.* http://domain.com/$0 [R=301,L]
Обратите внимание, что это делает 301 переадресацию - сервер указывает браузеру, что это постоянная переадресация, и браузер кэширует это перенаправление.
Вы также можете сделать внутреннюю переадресацию, когда это сопоставление выполняется тихо на сервере, путем настройки флагов.
Это предполагает, что ваша общая служба использует Apache, если его использование IIS, то вам нужно сделать что-то подобное с web.config
Это не перенаправление ... – HDTV
> RewriteCond% {HTTP_HOST}^www.dir.domain.com [NC] > RewriteRule^(. *) $ Http://domain.com/dir/$1 [L, R = 301] > RewriteCond% {HTTP_HOST}^dir.domain.com [NC] > RewriteRule^(. *) $ Http://domain.com/dir/$1 [L, R = 301]> RewriteCond% { HTTP_HOST}^dir.domain.com [NC] > RewriteRule^(. *) $ Http://domain.com/dir/$1 [L, R = 301]> Если им добавить этот код в /dir/.htaccess то он перенаправляет> [http://dir.domain.com] > [http://www.domain.com/dir] на [http://domain.com/dir]> но он не перенаправляет [ http://www.dir.domain.com] @TerryE – HDTV
@HDTV, обратите внимание на настройку Cond1 - также отредактируйте свой Q, чтобы добавить такую информацию. – TerryE
Вы можете попробовать:
RewriteCond %{HTTP_HOST} ^((?!www).+)\.domain\.com$
RewriteRule^http://domain.com/%1 [L,NE]
Пожалуйста, измените домен в своем домене, когда вы введете sub1.domain.com, тогда он будет перенаправлен на domain.com/sub1, когда вы введете sub2.domain.com, то он перенаправит домене.com/sub2 ....
Просьба дать подробный ответ –
У вас есть переадресация '* .domain.com' на ваш DOCROOT для' domain.com'? Какая у вас услуга? VPS или общий сервис, если последним является cPanel или webadmin. То, что вы просите, выполнимо, но ответ зависит от того, что вы нам рассказываете. – TerryE
У меня есть домен и субдомен в общей службе. Здесь я говорю о моем субдомене. – HDTV