2010-05-26 6 views
8

He tenido algunos usuarios que intentan acceder a un sitio que está registrado como subdomain.example.com con www.subdomain.example.com.redireccionando www.subdomain.example.com a subdomain.example.com

¿Existe algún tipo de regla .htaccess que pueda agregar para redirigir a las personas que llegan utilizando www.subdomain.example.com a subdomain.example.com?

Además, ¿tengo que cambiar las cosas de DNS?

Respuesta

16

Claro, utilizar una directiva como:

<VirtualHost *:80> 
    ServerName www.subdomain.example.com 
    Redirect permanent/http://subdomain.example.com/ 
</VirtualHost> 

Apache conserva automáticamente nada después de la / cuando se utiliza la directiva Redirect, que es un error común acerca de por qué este método no funcionará (cuando en de hecho lo hace).

Además, sí, tendrá que cambiar los registros DNS, porque www.subdomain.example.com es un nombre de host distinto que necesita su propio registro A (o CNAME) para apuntar el navegador a un servidor apropiado en primer lugar.

+0

esto supone que el OP está usando 'NameVirtualHost *: 80' – Martin

+0

@Martin: Es una suposición razonablemente segura. De lo contrario, la parte importante es la directiva 'Redirect', no el contenedor' VirtualHost'. –

+0

El hecho de que las personas ya estén accediendo al sitio usando 'www.subdomain.domain.com' sugiere que ese registro DNS ya puede estar en su lugar ... de ser así, no es necesario cambiarlo. –

4
RewriteCond %{HTTP_HOST} ^www.subdomain.domain.com 
RewriteRule (.*) http://subdomain.domain.com/$1 [R=301,L] 
+1

utilizando el motor de reescritura es una forma bastante pesado para resolver este problema . La directiva 'Redirect' hace exactamente lo mismo. –

+0

@GregHewgill De acuerdo, y además, esta respuesta no funcionará a menos que se coloque dentro de un vhost que coincidirá con www.subdomain.domain.com (o el vhost predeterminado). –

-1

es necesario agregar una directiva de host virtual en httpd.conf y redirección Permanente a la subdominio correcto y agregar la entrada adicional DNS (CNAME está muy bien)

Cuestiones relacionadas