Redirección 301 de dominios
Con una Redirección 301 de un dominio a otro conseguimos varios objetivos:
- Que el usuario sea redirigido a la nueva página web o URL que queremos ofrecerle.
- Que los robots de los buscadores de Internet como por ejemplo Google sean informados de nuestro cambio de dominio o URL.
- Que en el nuevo dominio se mantenga el PageRank y los Backlinks o enlaces entrantes conseguidos.
Con el siguiente ejemplo de código en el htaccess * conseguimos la redirección del dominio sin "www." al dominio con "www.":
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
solucionamos el tema de usar o no www, pero no estamos solucionando la duplicación o triplicación de contenidos, de tantos dominios o extensiones como tengamos parkeados a un mismo sitio.
En el código anterior, estamos haciendo que a cualquier dominio, si este carece de "www." le agregamos "www.", debemos modificar levemente el código para que vaya a un solo dominio específico.
El código final de redirección 301 en el htaccess * para llevar a un solo dominio debería quedar así:
RewriteEngine On
RewriteCond %{HTTP_HOST} !(www).dominioquesea.com
RewriteRule ^(.*)$ http://www.dominioquesea.com/$1 [R=301,L]
En el código anterior decíamos, si no tiene "www.", agrégale "www.", sea cual sea el dominio, funciona bien si tenemos solo 1 dominio pero duplica si tenemos dos dominios o dos extensiones (o más).
En este segundo código, se le indica si el dominio usa o no usa "www." o si no es dominioquesea.com que utilice siempre http://www.dominioquesea.com como dominio principal.
ANEXOS:
Internet Information Server:
* NOTA: elcódigo puede ser insertado en un fichero .htaccess, o en un fichero de configuración de apache como httpd.conf o en un vhost.conf de PLESK
- Que el usuario sea redirigido a la nueva página web o URL que queremos ofrecerle.
- Que los robots de los buscadores de Internet como por ejemplo Google sean informados de nuestro cambio de dominio o URL.
- Que en el nuevo dominio se mantenga el PageRank y los Backlinks o enlaces entrantes conseguidos.
Con el siguiente ejemplo de código en el htaccess * conseguimos la redirección del dominio sin "www." al dominio con "www.":
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
solucionamos el tema de usar o no www, pero no estamos solucionando la duplicación o triplicación de contenidos, de tantos dominios o extensiones como tengamos parkeados a un mismo sitio.
En el código anterior, estamos haciendo que a cualquier dominio, si este carece de "www." le agregamos "www.", debemos modificar levemente el código para que vaya a un solo dominio específico.
El código final de redirección 301 en el htaccess * para llevar a un solo dominio debería quedar así:
RewriteEngine On
RewriteCond %{HTTP_HOST} !(www).dominioquesea.com
RewriteRule ^(.*)$ http://www.dominioquesea.com/$1 [R=301,L]
En el código anterior decíamos, si no tiene "www.", agrégale "www.", sea cual sea el dominio, funciona bien si tenemos solo 1 dominio pero duplica si tenemos dos dominios o dos extensiones (o más).
En este segundo código, se le indica si el dominio usa o no usa "www." o si no es dominioquesea.com que utilice siempre http://www.dominioquesea.com como dominio principal.
ANEXOS:
Internet Information Server:
- Para hacer redirecciones 301, en servers Windows hay que instalar ISAPI_rewrite.
- Redireccion 301 con htaccess
Para redireccionar nuestro dominio a otro dominio o URL deberemos indicar los siguientes parámetros en el archivo .htaccess de la raíz de nuestro alojamiento.
Redirect 301 / http://www.nuevodominio.com/
- Redireccion 301 con ModREwrite
Para redireccionar nuestro dominio a otro dominio o URL deberemos indicar los siguientes parámetros en el archivo .htaccess de la raíz de nuestro alojamiento, siempre y cuando nuestro servidor tenga activado el ModRewrite en el Apache.
RewriteEngine On
RewriteRule .* http://www.nuevaurl.com/ [R=301]
- Redireccion 301 en PHP
<?php
header( “HTTP/1.1 301 Moved Permanently” );
header( “Location: http://www.tu-nuevo-sitio.com” );
?>
Debemos publicar en nuestro antiguo sitio un archivo con ese contenido e indicando la nueva dirección de manera correcta. Esto, obviamente se puede realizar en varios otros lenguajes de los cuales citamos algunos ejemplos a continuación.
- Redireccion 301 en ASP
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”,”http://www.tu-nuevo-sitio.com/”
%>
- Redireccion 301 en ASP.NET
<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e) {
Response.Status = “301 Moved Permanently”;
Response.AddHeader(“Location”,”http://www.tu-nuevo-sitio.com”);
}
</script>
- Redireccion 301 en JAVA JSP
<%
response.setStatus(301);
response.setHeader( “Location”, “http://www.tu-nuevo-sitio.com/” );
response.setHeader( “Connection”, “close” );
%>
- Redireccion 301 en RoR Ruby on Rails
def old_action
headers["Status"] = “301 Moved Permanently”
redirect_to “http://www.tu-nuevo-sitio.com/”
end
* NOTA: elcódigo puede ser insertado en un fichero .htaccess, o en un fichero de configuración de apache como httpd.conf o en un vhost.conf de PLESK