- Consultar el archivo de configuración principal de nginx
# Verificar la ubicación del archivo de configuración principal de nginx
nginx -t 2>&1 | grep archivo
# o
cat /etc/nginx/nginx.conf
- Inspeccionar los sitios habilitados en la configuración
Explorar el directorio sites-enabled (estilo Ubuntu/Debian)
# Enumerar todos los sitios habilitados
ls -la /etc/nginx/sites-enabled/
# Visualizar la configuración detallada de un sitio específico
cat /etc/nginx/sites-enabled/nombre-del-sitio
# Si se utiliza ruta absoluta
sudo find /etc/nginx -name "*.conf" | grep -E "sites|conf.d"
Explorar el directorio conf.d (estilo CentOS/RHEL)
ls -la /etc/nginx/conf.d/
cat /etc/nginx/conf.d/*.conf
- Localizar la configuración del sitio por defecto de nginx
# Ver la configuración del sitio por defecto
cat /etc/nginx/sites-available/default
# o
cat /etc/nginx/conf.d/default.conf
- Revisar la configuración activa de nginx
# Ver los archivos de configuración que los procesos de nginx están utilizando
ps aux | grep nginx | grep -v grep
# Usar nginx -T para ver la configuración completa (incluidos los archivos importados)
nginx -T 2>/dev/null | less
# Solo ver las configuraciones de bloques server
nginx -T 2>/dev/null | grep -A 50 "server {"
- Examinar la configuración de sitios específicos
# Encontrar archivos de configuración que contengan un dominio específico
grep -r "server_name" /etc/nginx/ --include="*.conf"
# Localizar configuraciones que escuchen en puertos específicos
grep -r "escucha" /etc/nginx/ --include="*.conf"
- Utilizra el comando tree para visualizar la estructura de configuración de nginx
# Instalar tree (si no está instalado)
sudo apt install tree
# Ver la estructura de directorios de configuración de nginx
tree /etc/nginx/
- Verificar la sintaxis de los archivos de configuración
# Probar la sintaxis de todos los archivos de configuración
sudo nginx -t
# Mostrar resultados detallados de la prueba
sudo nginx -T -t
- Inspeccionar detalles de la configuración de hosts virtuales
# Encontrar todos los bloques server
grep -n "server {" /etc/nginx/sites-enabled/*
# Ver la configuración específica de un server
sudo awk '/server {/,/^[[:space:]]*}/' /etc/nginx/sites-enabled/nombre-del-sitio
- Comandos útiles de una sola línea
# Mostrar todos los nombres de servidor y puertos de escucha de los sitios
sudo grep -h "server_name\|listen" /etc/nginx/sites-enabled/* /etc/nginx/conf.d/*.conf 2>/dev/null
# Mostrar las relaciones de inclusión de archivos de configuración de nginx
nginx -T 2>&1 | grep "conf" | head -20
- Localizar el directorio raíz y los archivos de registro de nginx
# Ver el directorio raíz predeterminado de los sitios web
grep -r "root" /etc/nginx/sites-enabled/ /etc/nginx/conf.d/ 2>/dev/null
# Ver las ubicaciones de los archivos de registro
grep -r "access_log\|error_log" /etc/nginx/ /etc/nginx/sites-enabled/ 2>/dev/null
Ejemplo de interpretación de salida
server {
listen 80;
server_name ejemplo.com www.ejemplo.com;
root /var/www/ejemplo.com;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
access_log /var/log/nginx/ejemplo.com.access.log;
error_log /var/log/nginx/ejemplo.com.error.log;
}