Ubuntu utiliza un esquema de Apache diferente al que usan otros sistemas operativos no basados en debian. Las diferencias son pequeñas, pero importantes a la hora de su configuración e implementación en sitios web. En este artículo explicaremos varias opciones de configuración del sitio y del módulo para Apache en Ubuntu.
Visualizamos el archivo de configuración de Apache:
$ cd /etc/apache2 $ ls
El resultado será:
apache2.conf envvars mods-available ports.conf sites-enabled conf.d httpd.conf mods-enabled sites-available
Configuración
Ajustaremos la configuración de:
- sites-available
- sites-enabled
- mods-available
- mods-enabled
sites-available
El sites-available contiene las configuraciones para cada sitio que quieras servir. Se conocen como máquinas virtuales , o host virtuales .
Dentro de la carpeta, encontrarás:
$ ls sites-available/ ... default default-ssl
El valor predeterminado de estos archivos de Apache indican qué hacer y dónde se encuentran los archivos.
No está activado por defecto, debes hacerlo manualmente.
sites-enabled
El sites-enabled contiene los enlaces simbólicos a los sitios a los cuales se está sirviendo.
Por ejemplo, puedes tener dos host virtuales configurados y preparados para su uso en el sites-available, pero sólo un host virtual tiene un enlace simbólico desde el sites-enabled ya activado y sirviendo.
Dentro de la carpeta podemos ver que host está activado:
$ ls -l sites-enabled ... lrwxrwxrwx 1 root root 26 Nov 28 22:38 000-default -> ../sites-available/default
El resultado nos dice que default esta activado. Y el enlace simbólico 000-default está correctamente configurado en sites-available.
mods-available
Esta carpeta contiene los módulos apache, ya preparados para ser activados.
Ejecuta:
$ ls mods-available
Podrás ver los módulos disponibles en tu instalación base, pero no todos están habilitados para su uso. Debes habilitar todos los módulos que te resulten necesarios.
mods-enabled
Contiene los módulos que están habilitados.
Ejecuta:
$ ls mods-enabled
Entre otros modulos, aqui podras encontrar php5.conf.
Permitir módulos por sitios
Con estos comandos podrás activar o desactivar los módulos por sitios.
a2dissite:
Este comando elimina el enlace a un sitio activado previamente.
$ sudo a2dissite default
La respuesta, será:
Site default disabled. Run '/etc/init.d/apache2 reload' to activate new configuration!
Reinicia apache:
$ sudo /etc/init.d/apache2 reload
a2ensite:
Establece un enlace a un sitio que no está habilitado.
$ sudo a2ensite default
La respuesta será:
Enabling site default. Run '/etc/init.d/apache2 reload' to activate new configuration!
Reinicia apache:
$ sudo /etc/init.d/apache2 reload
a2dismod:
Desactiva cualquier módulo que haya sido activado anteriormente.
$ sudo a2dismod php5
La respuesta será:
Module php5 disabled. Run '/etc/init.d/apache2 restart' to activate new configuration!
Si observamos el mods-enabled, veremos que los enlaces simbólicos de php5.conf y php5.load fueron eliminados.
a2enmod:
Activa cualquier módulo que se encuentre en la carpeta mods-available.
$ sudo a2enmod php5
La respuesta será:
Enabling module php5. Run '/etc/init.d/apache2 restart' to activate new configuration!
Después de cada cambio no debes olvidarte de reiniciar apache.