Ho un sito installato e funzionante e ho ottenuto un altro dominio e ho bisogno di redirect qualsiasi visita a exampleA.com
o qualsiasi sottodominio di esso, a una pagina in cui posso controllare il sottodominio della pagina richiesta a un elenco dinamico di siti e se la sua corrispondenza lo invia a quel sottodominio su exampleB.com
, e se non lo invia al sito principale su exampleB.com
. non ci sarà alcun sito su exampleA.com
è solo una versione più breve del dominio principale. Il sito principale è un sito wordpress.
Ciò che ho.
Ho exampleA.com
e exampleB.com
con exampleB.com
con sottodomini.
Ciò che di cui ho bisogno.
redirect *.exampleA.com
ad exampleB.com/somePage/?from=*
Dopo che arriva a exampleB.com/somePage/?from=*
posso controllare le informazioni $_GET
. ma non sono sicuro di come impostare il sottodominio arbitrario su $_GET
Avresti bisogno di alcune cose:
a) L'installazione DNS di exampleA.com deve essere configurata per consentire i sottodomini dei caratteri jolly:
*.exampleA.com. 3600 IN A xxxx
b) La configuration del server Web di exampleA.com deve consentire la corrispondenza dell'host jolly
<VirtualHost ...> ServerName exampleA.com ServerAlias *.exampleA.com </VirtualHost
c) Il documento predefinito di exampleA.com sarebbe un semplice script PHP che estrae il nome host in uso e invia un reindirizzamento a exampleB con il nome host estratto.
<?php $requested_host = $_SERVER['HTTP_HOST']; $parts = explode('.', $requested_host); arrays_pop($parts); // com arrays_pop($parts); // exampleA $requested_subhost = implode('.', $parts); header("Location: http://exampleB.com/?from=$requested_subhost");
Quando abbini il nome del dominio alla list (che puoi get da $_SERVER['HTTP_HOST']
), puoi quindi redirect l'utente in modo dinamico usando l' header('Location: http://example.com/ ')
di PHP header('Location: http://example.com/ ')
.