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

Andrés, me estoy pasando mi blog de wordpress.com a mi propio hosting. Tenés idea si hay alguna forma de utilizar este tip para redirigir a mi nuevo hosting?
El principal problema es que el servicio de wordpress.com, al ser gratuito, es muy limitado.
Mientras espero tu haz de luz, sigo mirando a ver si encuentro algo.

Buenas Manuel, como tu bien dicesal ser gratuito la limitación es palpable.

Por ello poca cosa puedes hacer, aparte de un post en el que indiques la nueva URL, me temo que no hay forma de utilizar esto.

Saludos

Como diríamos aquí en Argentina: “estoy al horno”.
Si se me ocurre algo te aviso. Muchas gracias

Como diríamos aquí en Argentina: “estoy al horno”.
Si se me ocurre algo te aviso. Muchas gracias.
De todas maneras mi blog es bastante modesto (no debe llegar a los 10 post), así que con un aviso creo que basta.

Yo hice hace tiempo algo parecido para mi antiguo blog en Google Blogger usando Javascript y la etiqueta “meta” de HTML.

document.write(”");

Ese script tiene que ir en el elemento “head” del código. No es igual que hacerlo con usando el código 301, pero te puede sacar de un apuro.

Pues vaya, parece que wordpress se ha comido el contenido de la orden javascript. Te dejo un enlace al artículo en mi weblog, espero que no sea demasiado spam :)

http://otrobloggeek.com/blog/2007/04/redirigir-las-visitas-de-tu-antiguo-weblog/

Buenas francisco, tienes razón así redireccionaremos el tráfico a la nueva URL, pero no estaremos devolviendo el HTTP Status Code 301 que tanto nos interesa.

Aunque las limitaciones que un sitios como wordpress.com nos obliga a hacer estas cosas.

Gracias por el aporte.

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.


Cerrar
Enviar por Correo