У меня есть клиент, у которого есть домен вроде this-site.com
, а также thissite.com
Не вдаваясь в суть проблемы, нам нужно перенаправить любой входящий запрос на любой *. This-site.com
на соответствующий *. Thissite.com
.
Так, например:
subdomain1.this-site.com -> subdomain1.thissite.com
subdomain2.this-site.com -> subdomain2.thissite.com
subdomain3.this-site.com -> subdomain3.thissite.com
Есть ли способ сохранить первую часть URL-адреса и передать ее второму домену?
Met die veronderstelling dat al hierdie subdomeine op dieselfde plek in die lêerstelsel oplos, dan ... om terug te lei van this-site.com
na thisstite.com
Terwyl u die subdomein en die res van die URL bewaar (dws. URL-pad en navraagstring), kan u iets soos die volgende doen met behulp van mod_rewrite, aan die bokant van u .htaccess
lêer in die wortel van u werf:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^([^.]+)\.this-site\.com [NC]
RewriteRule ^ https://%1.thissite.com%{REQUEST_URI} [R=302,L]
Ek het aangeneem HTTPS
. Dit herlei https: //
to https: //
.
The % 1
is 'n terugverwysing na die eerste gevange groep in die laaste wedstryd CondPattern . Met ander woorde, dit stem ooreen met die subdomein ( ([^.] +)
in die voorafgaande regex) in die versoekde gasheernaam.
Let ook op:
www
. subsubdomain.subdomain1.thissite.com
sal nie herlei word nie. hierdie-site.com
herlei nie. This is ook 'n tydelike (302) herleiding. As dit bedoel is om permanent te wees, verander dan die 302 na 301, maar eers nadat u bevestig het, werk dit OK. (301's word hard deur die blaaier geberg, sodat dit die toets moeilik kan maak.)