Foros del Web » Administración de Sistemas » Apache »

¿¿ mod_rewrite funciona con 2 idiomas "a la vez" ??

Estas en el tema de ¿¿ mod_rewrite funciona con 2 idiomas "a la vez" ?? en el foro de Apache en Foros del Web. holaa, a ver si podeis ayudarme: tengo mi sitio en 2 idiomas, ya al vez el modrwrite... quisiera saber como podria tenerlo activarlo (el mod ...
  #1 (permalink)  
Antiguo 03/11/2011, 15:44
 
Fecha de Ingreso: febrero-2010
Mensajes: 113
Antigüedad: 14 años, 9 meses
Puntos: 5
Pregunta ¿¿ mod_rewrite funciona con 2 idiomas "a la vez" ??

holaa, a ver si podeis ayudarme:

tengo mi sitio en 2 idiomas, ya al vez el modrwrite... quisiera saber como podria tenerlo activarlo (el mod rewrite) para mantenerme la pagina estatica.

por ejemplo: por el momento tengo: sitio.com/seccion

pero si lo traducimos quedaria: sitio.com/es/seccion

claro, ahi esta el problema, que no se como hacerlo, la pagina la tengo por carpetas, y po el momento lo tengo desactivado:

sitio.com/es/seccion.html

de la otra manera, no se como hacerlo! no se si esque hay que añadir alguna funcion en el .htaccess o alguna cosa similar.

la pagina la tengo traducida a modo "cutre", osea, por carpetas, copio y pego y lo traduzo manualmente.

culaquier duda que tengais, porfavor comentadmela!!

gracias, saludos.
  #2 (permalink)  
Antiguo 03/11/2011, 21:27
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: ¿¿ mod_rewrite funciona con 2 idiomas "a la vez" ??

Lo más básico para redirigir en función de las preferencias de idioma del navegador con .htaccess es esto

Código Apache:
Ver original
  1. #Redirijo al español si el lenguaje es "es"
  2. RewriteCond %{HTTP:Accept-Language} ^es [NC]
  3. RewriteRule ^$ /es/index.html [L,R=301]
  4. #Redirijo al inglés si el lenguaje es "en"
  5. RewriteCond %{HTTP:Accept-Language} ^en [NC]
  6. RewriteRule ^$ /en/index.html [L,R=301]
  7.  
  8. # si no es ninguno de esos, voy al español
  9. RewriteRule ^$ /es/index.html [L,R=301]

Hay cosas mas complejas para detectar y redirigir si el idioma contiene tambien una regionalización

es-Es
es-Ar
en-us
en-gb

etc...

saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 04/11/2011, 19:14
 
Fecha de Ingreso: febrero-2010
Mensajes: 113
Antigüedad: 14 años, 9 meses
Puntos: 5
Respuesta: ¿¿ mod_rewrite funciona con 2 idiomas "a la vez" ??

vaaale! lo hice tal cual como me pusiste, y el valor que le di (osea ntre el "^" y la "$") puse:
RewriteCond %{HTTP:Accept-Language} ^es [NC]
^es/inicio$ /es/inicio.html [L,R=301]

lo tengo asi, tambien he probado de la otra manera:

RewriteCond %{HTTP:Accept-Language} ^es [NC]
^/es/inicio$ es/inicio.html [L,R=301]

aqui te copio tal y como lo tengo:

Código Apache:
Ver original
  1. <IfModule mod_rewrite.c>
  2.     RewriteEngine on    
  3.     RewriteBase ../ca/index.html
  4.     RewriteCond %{SERVER_PORT} !^443$
  5.     RewriteRule ^(.*)$ http://dominio.com/$1 [L,R]
  6.     RewriteRule ^ca/inicio$ ca/index.html [L,R=301]
  7.     RewriteCond %{HTTP:Accept-Language} ^es [NC]   
  8.         RewriteRule ^es/inicio$ /es/index.html [L,R=301]
  9.         RewriteRule ^es/sobremi$ /es/aboutus.html [L,R=301]
  10.         RewriteRule ^es/portfolio$ /es/portfolio.html [L,R=301]
  11.         RewriteRule ^es/servicios$ /es/typography.html [L,R=301]
  12.         RewriteRule ^es/contacto$ /es/contact.php [L,R=301]
  13.     RewriteCond %{HTTP:Accept-Language} ^ca [NC]
  14.     RewriteRule ^ca/inicio$ /ca/index.html [L,R=301]
  15.         RewriteRule ^ca/sobremi$ /ca/aboutus.html [L,R=301]
  16.         RewriteRule ^ca/portfolio$ /ca/portfolio.html [L,R=301]
  17.         RewriteRule ^ca/servicios$ /ca/typography.html [L,R=301]
  18.         RewriteRule ^ca/contacto$ /ca/contact.php [L,R=301]
  19. </IfModule>

cualquier dato que necesites me dices, gracias un saludo!

es= español
ca= catalan

Última edición por ekisdedede; 07/11/2011 a las 19:48

Etiquetas: idiomas, vez
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:03.