Usando .htaccess para redirigir de un dominio a otro

votos
2

Recientemente compré un nuevo dominio para mi sitio de WordPress y quiero redireccionar a cualquiera que visite usando un dominio anterior al nuevo. No he movido servidores, solo agregué un nuevo dominio.

Por ejemplo, si fueron a cualquiera de estos:

http://www.example.net/some-article/
http://example.net/some-article/

Entonces me gustaría que sean redirigidos a la URL apropiada:

http://www.example.com/some-article/
http://example.com/some-article/

¿Cómo harías esta redirección simple .net -> .com con un archivo .htaccess? Cualquier regla debería aplicarse a todas las URL bajo el dominio .net.

Gracias por adelantado.


Editar: ya tengo el archivo .htaccess en el servidor:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

AddHandler php5-script .php
Publicado el 21/03/2009 a las 08:27
fuente por usuario
En otros idiomas...                            


4 respuestas

votos
8

Necesita agregar comandos como este a su archivo .htaccess:

redirigir permanente / some-article / http://www.example.com/some-article/

¿Es este un servidor con mod_rewrite? En este caso, podría hacer una redirección genérica para todas las rutas:

RewriteEngine On

RewriteRule ^(.*)$ http://www.example.com/$1 [R=301]
Respondida el 21/03/2009 a las 08:30
fuente por usuario

votos
0

Convertí de Drupal a WordPress hace un tiempo, y terminé pasando un montón de tiempo tratando de hacer que estos redireccionamientos funcionaran correctamente. Mi gran problema fue descubrir cómo usar RewriteCond junto con RewriteRule. Aquí hay un extracto de un artículo que escribí sobre esto:


# Rewrite drupal urls to worpress
RewriteCond %{QUERY_STRING} ^q=node/(.+)$
RewriteRule ^(.*)$ http://blog.componentoriented.com/?p=%1 [R=301,L]

# Forward RSS feed
RewriteCond %{QUERY_STRING} ^q=rss.xml$
RewriteRule ^(.*)$ http://blog.componentoriented.com/?feed=rss2 [R=301,L]
RewriteCond %{QUERY_STRING} ^q=atom/feed$
RewriteRule ^(.*)$ http://blog.componentoriented.com/?feed=rss2 [R=301,L]

También es muy útil estar atento a los hits y enlaces entrantes para ver si alguien está usando una forma antigua de URL que aún no está traduciendo. Tenía un enlace entrante codificado como URL de PostNuke (¡desde hace dos plataformas de blog!), Y esta técnica lo hizo realmente fácil de arreglar.

Aquí hay un enlace a mi artículo, por cierto: use .htaccess para redirigir de Drupal a Wordpress

Respondida el 23/03/2009 a las 12:43
fuente por usuario

votos
3

Yo modificaría tu bloque de reescritura existente para que se vea así:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# New code to redirect from example.net to example.com
# Permanent redirect for caching purposes, also include the query string
RewriteCond %{HTTP_HOST} ^example\.net
RewriteRule (.*) http://example.com/$1 [R=permanent,QSA,L]

# New code to redirect from www.example.net to www.example.com
RewriteCond %{HTTP_HOST} ^www\.example\.net
RewriteRule (.*) http://www.example.com/$1 [R=permanent,QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

AddHandler php5-script .php

Tenga en cuenta que en realidad no he probado esto ...

REMOTE_HOSTtambién puede funcionar en lugar de HTTP_HOST. La documentación de mod_rewrite recomienda el uso HTTP_HOST, aunque esto no funcionará si el navegador solo entiende HTTP / 1.0.

Respondida el 23/03/2009 a las 12:56
fuente por usuario

votos
0

Dominio de edad: RewriteCond% {} ^ HTTP_HOST abcd.com $ [NC]

Nuevo dominio: (. *) RewriteRule ^ $ http://abcdef.com/ $ 1 [R = 301, L]

Apuesto a que si se pone esto en su dominio de edad y simplemente cambia la segunda línea a su nuevo uso de su nuevo dominio, que funcionaría.

Respondida el 01/08/2014 a las 06:35
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more