Contenido

Redirecciónes 301 en varios lenguajes

30 ago

+ 8

Estoy desempolvando los borradores, y este llevaba ahi guardado unos cuantos meses, pero creo que puede ser interesante-

El código 301, por si solo me recuerda a un juego de dardos bastánte entretenido en el que has de ir descontando puntos hasta llegar a 0. Si lo extrapolamos a Internet, ese número se convierte en algo muy interesante y necesario de conocer para cualquier desarrollador/administrador web.

El HTTP Status Code 301, nos informa acerca del movimiento definitivo de una aplicación web. Esto significa que si un User-agent (como por ejemplo un robot) se pasea por nuestro sitio y se encuentra este error, tendrá en cuenta que tu sitio web se ha movido permanentemente a otro sitio.

Usando esta redirección, nos aseguramos que valores relacionados con nuestra aplicación se traspasarán a la nueva dirección, esto implica valores como PageRank, backlinks…

Por este motivo es algo debemos tener en cuenta cuando decidimos cambiar de forma permanente nuestra URL. Así que veamos como hacer esto en varios lenguajes para no perder el trabajo que ya hayamos hecho.

.httaccess

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.yournewdomain.com/$1 [R=301,L]
//sin www 
Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^www.yourdomain.com [nc]
rewriterule ^(.*)$ http://yourdomain.com/$1 [r=301,nc]
//con www 
Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^yourdomain.com [nc]
rewriterule ^(.*)$ http://www.yourdomain.com/$1 [r=301,nc]

PHP

header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: http://www.your-new-url.com" );

Cold Fusion

<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.new-url.com">

GI-Perl

$q = new CGI;
print $q->redirect("http://www.your-new-url.com/");

ASP

<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently";
Response.AddHeader("Location","http://www.your-new-url.com/");
%>;

ASP.NET

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

JSP 

<%
response.setStatus(301);
response.setHeader( "Location", "http://www.new-url.com/" );
response.setHeader( "Connection", "close" );
%>

Ruby on Rails

def old_action
	headers["Status"] = "301 Moved Permanently"
	redirect_to "http://www.new-url.com/"
end

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.