Debo crear un sitio web multilingüe. Para lograr este objetivo, quiero señalar el subdominio que representa un idioma al primer parámetro de URL (variable GET) del dominio en mi virtualhost
configuración htaccess
.
El esquema es el siguiente:
example.com => /
([a-z-]+).example.com => /?lang=$1
([a-z-]+).example.com/directory1/ => /directory1/?lang=$1
([a-z-]+).example.com/directory1/page.html => /directory1/page.html?lang=$1
etc... cualquiera que sea el número de directorios y páginas.
Entonces, según este esquema:
en-en.example.com matches /?lang=en-en
en-en.example.com/directory1/ matches /directory1/?lang=en-en
en-en.example.com/directory1/page.html matches /directory1/page.html?lang=en-en
etc... cualquiera que sea el número de directorios y páginas.
Entonces, ¿cómo puedo hacer eso en mi configuración de Apache?
Respuesta1
Creo que algo como esto en su archivo de configuración .htaccess o de host virtual funcionará; Esto coincide solo con nombres de subdominios de dos letras; ajuste la primera expresión regular en consecuencia... por ejemplo ([az-]+)
RewriteEngine On
RewriteCond %{HTTP_HOST} "^([a-z]{2})\.example\.com$"
RewriteRule "^(.*)$" http://example.com$1?lang=%1