Gestión básica
El servidor HTTP Apache se gestiona a través de comandos que ejecutaremos en la terminal. De momento, no exsite una interfaz gráfica nativa para hacerlo.
Por otro lado, PHP debe gestionarse modificando sus archivos de configuración, realizando acciones e instalando módulos a través de la línea de comandos.
Por último, las tanto MySQL como MariaDB pueden gestionarse a través de la terminal de comandos, pero existen aplicaciones desarrolladas exclusivamente para la gestión éstas y otras base de datos.
Aplicaciones de administración
Existen algunos desarrollos de terceros como Webmin o Ajenti, que nos permiten gestionar la configuración del servidor Web Apache, de PHP y las bases de datos. Existen, además, herramientas exclusivas para la gestión de estas últimas como phpMyAdmin o DBeaver entre otras.
Sin embargo, para gestionar efectivamente un servidor LAMP es imprescindible conocer la ubicación de los archivos y carpetas de configuración, ya que dicho conocimiento facilitará enormente nuestro trabajo.
Apache¶
A continuación se listan directorios y archivos de configuración así como los comandos para gestionarlo desde la terminal.
Archivos y carpetas importantes¶
Una vez instalado el servidor web Apache se crea una estructura archivos y directorios, entre los que se destacan:
Directorio o archivo | Descripción |
---|---|
/etc/apache2/apache.conf |
Archivo de configuración general de Apache |
/etc/apache2/sites-available |
Directorio donde se alojan los archivos de configuración de los sitios definidos pero aún no activos (es decir, no habilitados |
/etc/apache2/sites-enabled |
Directorio donde se alojan los archivos de configuración de los sitios activos o habilitados |
/etc/apache2/mods-available |
Directorio donde se alojan los módulos de Apache aún no activos (es decir, no habilitados |
/etc/apache2/mods-enabled |
Directorio donde se alojan los módulos de Apache activos o habilitados |
/var/www/html |
Directorio por del sitio web por defecto, donde Apache aloja las páginas web |
/home/usuario/public_html |
Directorio donde se aloja el sitio web personal de cada usuario del sistema |
Gestión de módulos¶
El servidor web Apache contiene diversos módulos que proveen al servidor de funcionalidades extra. La mayoría de ellos están deshabilitados por defecto.
La sintáxis básica para tabajar con módulos es la siguiente:
Donde:
Sistema operativo | Ubicación del archivo hosts |
---|---|
a2 |
Inicio del comando de Apache2 |
en |
Enable es decir, habilitar el sitio web |
dis |
Disable, es decir, deshabilitar el sitio web |
mod |
Simboliza el concepto de módulo |
nombreDelModulo |
Nombre del modulo que deseamos habilitar o deshabilitar |
Por ejemplo, la siguiente acción habilitará el módulo userdir
:
En otras palabras, creará un enlace simbólico del módulo userdir
desde la carpeta /etc/apache2/mods-available
hacia la carpeta /etc/apache2/mods-enabled
.
Gestión general del servidor¶
Existen diversos comandos para gestionar el servidor web Apache.
Detener el servidor
Iniciar el servidor
Reiniciar el servidor
Recargar la configuración del servidor (sin reiniciar)
Estado del servidor
Verificar la configuración del servidor
Compatibilidad con versiones anteriores¶
Las versiones más recientes del kernel de GNU/Linux adoptan el uso de SystemD. No obstante, versiones basadas en Debian anteriores a 2016, emplean el legendario SystemV. Al momento de escribir esta documentación, en líneas generales, los sistemas basados en systemd conservan compatibilidad con systemV. Para el caso del servidor web Apache tenemos que:
Detener el servidor
Iniciar el servidor Reiniciar el servidor Recargar la configuración del servidor (sin reiniciar)Configurando el nombre del servidor¶
Al comprobar la configuración de Apache obtenemos el siguiente error:
Para corregir esto, abrimos el archivo de configuración principal de Apache con nuestro editor de texto: Y agregamos al final del archivo la directivaServerName
, seguida del nombre de dominio o dirección IP de nuestro servidor web. Es decir:
Guardamos y cerramos el archivo. Luego, para verificar que todo está bien (es decir, que no hay errores de sintaxis en el archivo de configuración de Apache):
Y como definimos la directiva global ServerName
, veremos la siguiente salida:
Por último, reiniciamos Apache para implementar los cambios:
PHP¶
El arcivo de configuración de PHP se llama php.ini
. No existe un único archivo php.ini
, más bien, existe un archivo php.ini
para cada aplicación que lo utilice.
Ubicación de php.ini |
Uso |
---|---|
/etc/php/<version>/apache2/php.ini |
Plugin PHP utilizado por el servidor web Apache |
/etc/php/<version>/fpm/php.ini |
Plugin PHP utilizado por el servidor web NGINX |
/etc/php/<version>/cli/php.ini |
Ejecución de PHP desde la terminal de comandos |
/etc/php/<version>/cgi/php.ini |
Plugin PHP para CGI |
Donde <version>
corresponde a la versión de PHP instalada. Luego, el archivo que tendremos que editar cuando querramos modificar el comportamiento de PHP en un entorno LAMP será el que aparece en la primer fila de la tabla.
Base de datos¶
Las bases de datos soportan administración a través de la línea de comandos, como podemos leer en la documentación oficial de MySQL y MariaDB. No obstante, una de las opciones más elegidas a la hora de gestionar base de datos es phpMyAdmin