jueves, 19 de septiembre de 2013

Configuración Apache en Windows para habilitar rutas relativas simulando un dominio

Al montar apache puede ser que te encuentres con el problema de descargar un sitio web que funciona correctamente en el servidor pero que al ejecutarlo en local pierde estilos, enlaces, javascript y más cosas. Es posible que las rutas que utiliza ese código sean rutas relativas y al situarlo físicamente en tu workspace deje de funcionar.

La mejor manera para solucionar este problema en mi opinión es hacer lo siguiente:

Si utilizas windows:
  1. Editar el archivo hosts.
  • Ir a c:\windows\system32\drivers\etc\ y editar con el bloc de notas el archivo hosts
  • Insertar al final:
127.0.0.1 local.ejemplo1.com
127.0.0.2 local.ejemplo2.com

.... 
  
Para todos los Sistemas Operativos:
     2. Editar el archivo httpd-vhosts.conf
  • Deberás ir a este fichero donde se configuran los virtual hosts. Dependiendo donde tengas instalado tu apache  se encontrará en una ruta u otra, pero dentro de la ruta de apache deberás ir  a apache\conf\extra y allí lo encontrarás.
  •  Insertar al final:
<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs/
ejemplo1.com"
    ServerName local.
ejemplo1.com</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs/
ejemplo2.com"
    ServerName local.
ejemplo2.com
</VirtualHost> 

...

  • En DocumentRoot establecerás la ruta física al directorio donde se encuentra tu sitio web
  • En ServerName  pondrás el nombre que estableciste anteriormente en el archivo hosts
Ahora solamente deberás abrir el navegador y meter la url que has establecido como servername, por ejemplo: local.ejemplo1.com