2008-08-19 14 views
39

tengo 2 anfitriones y me gustaría señalar un subdominio en el host uno a un subdominio en una serie de dos:Cómo redirigir sitioA a SITEB con registros A o CNAME

subdomain.hostone.com --> subdomain.hosttwo.com 

añadí un registro CNAME para alojar uno que apunta a subdomain.hosttwo.com pero todo lo que obtengo es un error '400 Bad Request'.

¿Alguien puede ver lo que estoy haciendo mal?

+11

No veo que esto esté fuera de tema. La configuración DNS está en el ámbito de la programación. – superluminary

+20

@superluminary: "offtopic" significa que el mod no conoce el campo o que tuvo un mal día o que quería una insignia para cerrar el ticket. En este caso, la pregunta es más adecuada para ServerFault en mi humilde opinión, por lo que debería haber sido migrada, no cerrada. – SamGoody

+0

No puedo estar más de acuerdo, esta publicación debe volver a abrirse o migrarse, DNS config es algo que abarca ambas áreas. –

Respuesta

13

pruebe a cambiar a "subdominio -> subdomain.hosttwo.com"

El CNAME es un alias para un determinado dominio, por lo que cuando vaya al panel de control para hostone.com, que no debería tener para ingresar el nombre completo en el alias CNAME.

Por lo que respecta al error que está recibiendo, ¿puede iniciar sesión en subdomain.hostwo.com y consultar los registros?

+0

¿qué diferencia de la redirección de URI normal y la redirección de CNAME? – Elankeeran

+2

@Elankeeran URL redirect puede tener una ruta adjunta: CNAMES solo se puede hacer con dominios completos. p.ej. URL redirecciona subdmain (por ejemplo, 'www') a <[SubDomain.] Domain.TLD> [/ Path [/ ...]] (por ejemplo,' https: // www.example.com/sites/xyz') donde como subdominio CNAME (por ejemplo, 'www') a <[SubDoman.] Domain.TLD> (ej.' ghs.google.com') –

+0

Un CNAME es un alias para un registro A o AAAA, que nunca puede ser un dominio sino siempre es un nombre * dentro * de un dominio o nombre de dominio, para abreviar. –

2

Parece que el servidor web en hosttwo.com no permite el paso de dominios indefinidos. También dijiste que querías hacer una redirección, este no es realmente un método para redireccionar. Si compró este dominio a través de GoDaddy, es posible que desee utilizar su servicio de redirección.

+0

o cambiar el host :) – Eoin

0

Probablemente sea la mejor/más fácil configurar un 301 redirect. No es necesario hackear DNS.

0

Solo puede poner el nombre DNS pont en una dirección IP diferente, por lo que si está utilizando hosts virtuales, la redirección con DNS no funcionará.

Al ingresar a subdomain.hostone.com en su navegador, utilizará DNS para obtener su dirección IP (si es un CNAME, continuará intentándolo hasta que obtenga la IP del registro A), se conectará a esa IP y enviará una solicitud http con

Host: subdomain.hostone.com

en algún lugar de los encabezados http.

0

Puede hacer esto de varias maneras que no sean DNS. La página de inicio en subdomain.hostone.com puede tener un HTTP redirect. El servidor web en hostone.com se puede configurar para redirigir (fácil en Apache, no estoy seguro acerca de IIS), etc.

11

Creo que varias de las respuestas se centran en la posible solución a su problema.

Acepto que la forma más fácil (y la mejor solución para fines de SEO) es la redirección 301. En IIS esto es bastante trivial, usted crearía un sitio para subdomain.hostone.com, después de crear el sitio, haga clic derecho en el sitio y vaya a las propiedades. Haga clic en la pestaña "Directorio de inicio" de la ventana de propiedades del sitio que se abre. Seleccione el botón de opción "Una redirección a una URL", ingrese la url para el nuevo sitio (http://subdomain.hosttwo.com) y marque las casillas de "La URL exacta ingresada arriba", "Una redirección permanente para este recurso" (esta segunda casilla de verificación ocasiona 301 redirigir, en lugar de una redirección 302). Haga clic en Aceptar y listo.

O bien, podría crear una página en el sitio de http://subdomain.hostone.com, usando uno de los siguientes métodos (dependiendo de lo que es compatible con la plataforma de alojamiento)

PHP redirección:


<? 
Header("HTTP/1.1 301 Moved Permanently"); 
Header("Location: http://subdomain.hosttwo.com"); 
?> 

ASP redirección:


<%@ Language=VBScript %> 
<% 
Response.Status="301 Moved Permanently" 
Response.AddHeader "Location","http://subdomain.hosttwo.com" 
%> 

ASP .NET de redirección:


<script runat="server"> 
private void Page_Load(object sender, System.EventArgs e) 
{ 
Response.Status = "301 Moved Permanently"; 
Response.AddHeader("Location","http://subdomain.hosttwo.com"); 
} 
</script> 

Suponiendo que su registro CNAME se creó correctamente, el único problema que está experimentando es que el sitio creado para http://subdomain.hosttwo.com está utilizando una dirección IP compartida y encabezados de host para determinar qué sitio debe mostrarse. Para resolver este problema en IIS, en el Administrador de IIS en el servidor web, haga clic con el botón derecho en el sitio para subdomain.hosttwo.com y haga clic en "Propiedades". En la pestaña "Sitio web" que se muestra, debería ver un botón "Avanzado" junto a la dirección IP en la que deberá hacer clic. En la ventana "Identificación avanzada del sitio web" que aparece, haga clic en "Agregar". Seleccione la misma dirección IP que ya está siendo utilizada por el subdominio.hosttwo.com, ingrese 80 como el puerto TCP y luego ingrese el subdominio.hosttwo.com como el valor del Encabezado del host. Haga clic en Aceptar hasta que regrese a la ventana principal del Administrador de IIS, y debería estar listo para continuar. Abra un navegador y vaya a http://subdomain.hostone.com, y verá el sitio en http://subdomain.hosttwo.com aparecen, a pesar de que su URL muestra http://subdomain.hostone.com

Espero que ayude ...

+0

Estoy bastante seguro de que la función del encabezado PHP() es minúscula. –

+2

@UncleNinja: Mientras que PHP define la función header() como minúscula (y así es como debe usarse en el código), el lenguaje PHP no distingue entre mayúsculas y minúsculas en este sentido, por lo que 'Header()' seguirá funcionando bien . – MrWhite

+1

@ w3d ¡gracias, no sabía de eso! –

2

En estos días, muchos propietarios de sitios web están utilizando los servicios de CDN que extrae datos del servidor CDN. Si ese es su caso, entonces se quedan con dos opciones:

  1. crear un subdominio y editar DNS Al añadir un registro CNAME

  2. No cree un subdominio pero sólo crear un registro CNAME que señala de nuevo a su URL DNS temporal.

Esta solución sólo implica a tirar código de CDN que mostrará que está ir a buscar los datos de cdn.sitename.com pero en la práctica su tirando de su anfitrión CDN.

Cuestiones relacionadas