Перенаправить динамический поддомен на тот же поддомен с подстраницей. Как? - PullRequest
0 голосов
/ 21 августа 2009

Я немного застрял здесь. Мне нужно помочь с этой ситуацией с поддоменами.

Мне нужно перенаправить http://dynamicsubdomain.example.com/ на http://dynamicsubdomain.example.com/account/welcome.html. Как мне это сделать? Я попробовал несколько вещей, но все безрезультатно. Основная проблема заключается в том, что я не могу получить введенный динамический поддомен из строки %{HTTP_POST} из mod_rewrite.

Другая проблема заключается в том, что это создает бесконечный цикл. Так что только необходимо перенаправить на этих условиях, а не при наличии URL-адреса, подобного http://dynamicsubdomain.example.com/test/page.html. Потому что иначе это создаст и бесконечный цикл. Это только для начальной страницы с сайта.

Надеюсь, вы все мне поможете, это одна из последних , но важных вещей из моего проекта.

Заранее спасибо!

Ответы [ 4 ]

1 голос
/ 21 августа 2009

Почему домен так важен, если вы остаетесь в том же домене и просто перенаправляете по другому пути?

Параметр UseCanonical в Apache может повлиять на это, но по умолчанию он включен, что сохраняет хост и порт, указанные в запросе.

RewriteRule ^/$ /account/welcome.html [R,L]
1 голос
/ 21 августа 2009

На вики-странице URL существует несколько параметров . Например, как насчет удаления index.php в корне, который перенаправляет к месту назначения?

header("Location: http://dynamicsubdomain.example.com/account/welcome.html");
0 голосов
/ 21 августа 2009

Если вы действительно хотите использовать HTTP_HOST:

RewriteRule ^$ http://%{HTTP_HOST}/account/welcome.html [L,R]

Но, как gahooa уже сказал, вы не указываете абсолютный URL, если вы остаетесь с тем же хостом. Достаточно пути URL:

RewriteRule ^$ /account/welcome.html [L,R]
0 голосов
/ 21 августа 2009

Привет, ребята, спасибо за вашу поддержку / помощь, но я сам нашел решение. Быстрее чем я думал :) 1001 *

Вот в чем дело, надеюсь, я могу кому-нибудь помочь с этим:

RewriteCond %{REQUEST_URI} ^/$ [NC]
RewriteCond %{HTTP_HOST} ^([A-Za-z0-9]+).example\.com [NC]
RewriteRule ^ http://%1.example.com/account/welcome.html [L]

@ gahooa: Мне нужно это сделать, потому что моя главная страница example.com - это просто целевая страница без особых вещей. Дополнительная часть URL «account / welcome.html» предназначена для отображения страницы, связанной с «subdomains» -account (например, gahooa.example.com покажет страницу вашего профиля). В моем приложении я перехватываю поддомен с помощью preg_match, чтобы он знал, какую учетную запись он должен загрузить. Я надеюсь, что все ясно :) Но все равно спасибо!

Это мой первый раз, когда я использую Stackoverflow, но на самом деле он отлично работает! Быстрые ответы от экспертов, отличная работа! Я обязательно вернусь :) 1009 *

...