El servidor Apache http tiene herramientas por linea comandos que nos permite ver, modificar y configurar varios aspectos del servidor.
Comandos básicos para Iniciar/Reiniciar/Parar apache
Start Iniciar servidor
service apache2 start
Restart Reinciar servidor
service apache2 restart
Start Parar servidor
service apache2 stop
Fichero principal de configuración de Apache2
El fichero principal de configuración de servidor APACHE http es el fichero apache2.conf. Se localiza en:
/etc/apache2/
En la misma carpeta se encuentra el fichero ports.conf donde se indican los puertos que voy a utlizar en los virtualHost.
Dentro de este directorio podremos encontrar todos los ficheros configuracion de APACHE, incluso de todos virtualhost (sites) que tenemos para el mismo servidor.
Comando consulta a2query
Este comando es super util, para obtener un monto informacion de nuestro servidor APACHE Http.
Saber que modulos tenemos instalado en Apache2
Con el comando:
a2query -m
Nos muestra todos lo modulos que tenemos intalados.
Si queremos ver solos los Modulos de Procesamiento Multiple de Apache habilitado actualmente debe utilizar la opcion -M
Saber que sites tenemos activos.
a2query -s
Nos muestra listado de todos sites que tenemos activos.
Saber la version de apache que tenemos
a2query -v
Nos indica la version de apache.
Una tormenta de anotaciones de APACHE
Anotaciones si clasificar aun...
Actualizando permisos y/o propietarios del site
Después de actualizar algún fichero en tu site es posible que hayas perdido los permisos o que el usuario del fichero haya cambiado. Tanto para apache como para nginx se suele utilizar mucho estos 2 comandos:
Dar como propietario www-data a la carpeta apache2 y a todos sus ficheros/carpetas hijas.
sudo chown -R www-data:www-data /var/www/html/apache
Cambiar los permisos a la carpeta apache y a todos sus ficheros/carpetas hijas
sudo chmod -R 775 /var/www/html/apache
r=read, w=write, x=execute
Owner: 7=rwx, Group: 5=r-x, Other: 5=r-x
Modulos Apache2
Otros comandos muy útiles son aquellos que te permiten cargar módulos o listar los disponibles. Por ejemplo para instalar php en apache2 vas a necesitar cargar un módulo concreto. En mi caso para la versión 7.2 yo tengo php7_module.
Para los modulos de configuración de apache
Habilitar módulo conf
a2enconf php7.2-fpm
Deshabilitar módulo conf
a2disconf php7.2-fpm
Para los modulos generales de apache
Habilitar módulo proxy fcgi
a2enmod proxy_fcgi
Deshabilitar módulo proxy fcgi
a2dismod proxy_fcgi
Después de estas instrucciones hay que reiniciar apache.
Listar módulos disponibles:
foouser@fooserver:~# apache2ctl -t -D DUMP_MODULES
Respuesta:
Loaded Modules:
core_module (static)
so_module (static)
watchdog_module (static)
http_module (static)
log_config_module (static)
logio_module (static)
version_module (static)
unixd_module (static)
access_compat_module (shared)
...
...
authz_host_module (shared)
authz_user_module (shared)
autoindex_module (shared)
deflate_module (shared)
dir_module (shared)
env_module (shared)
filter_module (shared)
mime_module (shared)
mpm_prefork_module (shared)
negotiation_module (shared)
php7_module (shared)
proxy_module (shared)
proxy_fcgi_module (shared)
reqtimeout_module (shared)
rewrite_module (shared)
setenvif_module (shared)
status_module (shared)
Puedes ir a las carpetas
/etc/apache2/conf-enabled
/etc/apache2/conf-available
Para comprobar los módulos tipo conf habilitados/disponibles.
El resto de módulos se encuentran en:
/usr/lib/apache2/modules/
Por ejemplo para ver los módulos conf habilitados:
foouser@fooserver:/etc/apache2/conf-enabled# ls
charset.conf
other-vhosts-access-log.conf
security.conf
localized-error-pages.conf
php7.2-fpm.conf
serve-cgi-bin.conf
Estos directorios son útiles para investigar problemas relacionados con la carga de módulos. Por ejemplo el módulo existe pero no lo tienes habilitado.
La instalación de apache consume tiempo y es normal encontrar algunos problemas con los módulos (sobre todo cuando cambias de versión de PHP o subes de versión del S.O). Hay mucha documentación en internet para resolver estos problemas.