Apache перенаправление поддоменов - PullRequest
1 голос
/ 24 января 2012

У меня есть поддомен (называемый subdomain.mydomain.com)

Я просто хочу, чтобы страница (например, www.mydomain.com/page1.php) перенаправляла на мой поддомен

Поэтому, когда я загружаю subdomain.mydomain.com, я хочу перейти на www.mydomain.com/page1.php, но сохраняя свой поддомен в URL

Использование htacess или virtualhost

вот мой отредактированный код с вашими комментариями

Options +FollowSymLinks -MultiViews
RewriteEngine on

RewriteCond %{QUERY_STRING} (^|&)com=who(&|$) [NC]
RewriteCond %{HTTP_HOST} ^www\.mysite\.fr$ [NC]
RewriteRule ^index\.php/?$ http://apropos.mysite.fr/? [NC,L,R]

RewriteCond %{HTTP_HOST} ^apropos\.mysite\.fr$ [NC]
RewriteRule ^$ http://www.mysite.fr/index.php?com=who [L,P,QSA]

Ответы [ 2 ]

1 голос
/ 25 января 2012

Вы можете попробовать следующий код в вашем ROOT .htaccess:

Options +FollowSymLinks -MultiViews
RewriteEngine on

# Redirects www.mydomain.com/page1.php?com=who to subdomain.mydomain.com
RewriteCond %{QUERY_STRING} (^|&)com=who(&|$) [NC]
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$ [NC]
RewriteRule ^page\.php/?$ http://subdomain.mydomain.com/? [NC,L,R]

# Internal Redirect(Proxy) subdomain.mydomain.com to www.mydomain.com/page1.php?com=who
RewriteCond %{HTTP_HOST} ^subdomain\.mydomain\.com$ [NC]
RewriteRule ^$ http://www.mydomain.com/page.php?com=who [L,P,QSA]
1 голос
/ 24 января 2012

Поэтому, когда я загружаю subdomain.mydomain.com, я хочу перейти на www.mydomain.com/page1.php, но сохраняя свой поддомен в URL

Попробуйте добавить следующее в .htaccess в корневой каталог вашего сайта. Я предполагаю, что ваш поддомен и домен имеют общий корень.

RewriteEngine on
RewriteBase /

# page (ex: www.mydomain.com/page1.php) redirects to my subdomain
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$ [NC]
#do not redirect if from proxy
RewriteCond %{QUERY_STRING} !(^|&)r=1(&|$) [NC]
RewriteRule ^page1\.php/?$ http://subdomain.mydomain.com [NC,L,R=301]


#if subdomain.mydomain.com
RewriteCond %{HTTP_HOST} ^subdomain\.mydomain\.com$ [NC]
#and root directory, then proxy to page1
RewriteRule ^$ http://www.mydomain.com/page1.php?r=1 [P,L]
...