Redirigir por idioma del navegador con .htaccess
Buenas tardes caballeros, señoras y señoritas ;D
Cómo indica el título de la web me estoy volviendo un poco loco tratando de redigir una web según el idioma del navegador a diferentes subdominios.
En una web multi-idioma que he colocado los idiomas por subdominios.
La web principal está en ingles de tal modo: http://www.midominio.com/index.html
Las webs en otros idiomas las he configurado mediante subdominios del tipo http://es.midominio.com/index.html
He probado con bastantes códigos en el htaccess y no hay manera. O no funcionan o me tiran la web.
Sabríais decirme qué código o de qué modo puedo redigirir el tráfico de la manera más eficiente posible tanto para usuarios como para SEO?
A mi parecer es más correcto mediante el htaccess pero si no queda de otra podría intentarlo con un script. El problema es que también hasta ahora los que he probado no funcionan correctamente.
Una de las sentencias usadas en el htaccess probadas y que no funcionan es de este tipo:
RewriteEngine on
RewriteCond %{HTTP:Accept-Language} (en) [NC]
RewriteRule .* http://www.midominio.com/ [R,L]
RewriteCond %{HTTP:Accept-Language} (es) [NC]
RewriteRule .* http://es.midominio.com/ [R,L]
RewriteCond %{HTTP:Accept-Language} (ru) [NC]
RewriteRule .* http://ru.midominio.com/ [R,L]
Muchas gracias y saludos!
avippp
Gracias JoanBoluda!
Con esa sentencia ha funcionado, pero generado un problema... redirige todo el contenido de la web al enlace que le ponemos. Es como si hiciésemos un 301, por lo que no deja navegar por la web a otras urls.
El proceso es el siguiente:
Pones la dirección genérica de la web en el navegador: www.midominio.com
Al tener el navegador en (es) te redirige al subdominio http://es.midominio.com
Dentro de ese subdominio clickas un enlace para ir www.midominio.com/galeria, por ejemplo, y automáticamente te vuelve a mandar al index del subdomino http://es.midominio.com
Espero haberme explicado con claridad. Muchas gracias de antemano.
Saludos.
JoanBoluda Profesor Plus
Lo correcto debería ser del estilo:
RewriteEngine on
RewriteCond %{HTTP:Accept-Language} (es) [NC]
RewriteRule .* http://web-en-español.com [R,L]
Joan Boluda
Consultor de Marketing Online
Curso de eCommerce con WordPress
boluda.com