GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo solucionar problemas cuando su sitio está inactivo en un servidor Linux

Introducción

A veces podemos tener problemas cuando uno de nuestros servidores web o sitios está inactivo. Deberíamos poder identificar este problema que probablemente esté causando los problemas y solucionar el problema.

En este artículo, compartiremos algunos pasos para la solución de problemas, que son algunos de los pasos comunes que toman los administradores cuando no se puede acceder correctamente a un sitio. Puede consultar estos pasos y solucionar el problema para que pueda poner en marcha su sitio y corriendo.

Requisitos previos

Para recuperar estos problemas, necesitará:

  • Acceso al servidor Linux, con un usuario sudo.

Paso 1:Comprobar el estado del servidor

Antes de continuar con los pasos mencionados, primero debemos verificar si puede acceder al servidor. A veces, el propio servidor puede haberse caído. Puede verificar esto con el comando ping y ssh

ping your_server_ip

Si puede hacer ping a su servidor y está ARRIBA, obtendrá el siguiente resultado

e2e@compaqlaptop:~$ ping 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=18.0 ms

64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=20.1 ms

64 bytes from 8.8.8.8: icmp_seq=3 ttl=57 time=21.3 ms

^C

--- 8.8.8.8 ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2002ms

rtt min/avg/max/mdev = 18.042/19.837/21.342/1.362 ms

e2e@compaqlaptop:~$ 

Si su servidor está inactivo, en ese caso no obtendrá ningún ping. Puede verificar si hay algún error en la consola de su servidor y reiniciar su servidor a través de Mi cuenta

Nota:Es posible que a veces no pueda hacer ping al servidor incluso cuando su servidor está ACTIVADO y esto puede deberse a que el ping está deshabilitado en su servidor

También debería poder acceder a SSH e iniciar sesión en el servidor para verificar si funciona bien. Puede acceder a su servidor a través de ssh con el siguiente comando

ssh [email protected]

si no puede iniciar sesión en su servidor, lo más probable es que su servidor esté inactivo o colgado y verifique si hay algún error en la consola de su servidor y reinicie su servidor a través de Mi cuenta

Paso 2:Supervisando su servidor

Una alta carga de procesador o consumo de memoria puede hacer que su servidor no responda. Puede consultar este artículo sobre cómo monitorear el servidor E2E a través de Zabbix

Una vez que haya identificado las anomalías en la utilización de los recursos de su servidor, puede tomar las medidas necesarias para evitar el problema.

Paso 3:Verifique los registros

Antes de rastrear cualquiera de los problemas, primero debemos verificar los registros de nuestro servidor web y los componentes relacionados. Si encontramos algún error registros o registros sospechosos en acceso registros, podremos identificar los problemas con precisión.

Los registros generalmente estarán presentes en el directorio /var/log . si tiene un servidor Apache ejecutándose en un servidor Ubuntu, de forma predeterminada, los registros se mantendrán en /var/log/apache2 . Verifique los archivos en este directorio para ver qué tipo de mensajes de error se generan. Si está utilizando una distribución que se refiere a Apache como httpd de forma predeterminada, los registros se mantendrán en

/var/log/httpd.log

Si está utilizando Nginx como su servidor web, los registros generalmente se encuentran en la ubicación a continuación

/var/log/nginx/access.log
/var/log/nginx/error.registro
/var/log/nginx/nginx_error.log
/var/log/nginx/access_error.log

Verifique los archivos en este directorio para ver qué tipo de mensajes de error se generan. Alternativamente, también puede verificar los archivos de configuración del servidor web si ha configurado una ruta manual para los registros.

Para verificar los últimos registros generados desde el servidor, puede ejecutar debajo de tail comando como se muestra en el siguiente ejemplo

tail -f /var/log/nginx/access.log
tail -f /var/log/httpd.log

También puedes ver con menos comando para ver los registros completos como se muestra a continuación, asegúrese de cambiar la ruta del archivo de registro según el suyo en el siguiente comando.

less /var/log/nginx/access.log

una vez que haya identificado el problema en los registros, podrá detectar fácilmente el problema y solucionarlo de manera adecuada.

Paso 4:Asegúrese de que su servidor web esté funcionando

Puede verificar si sus servicios están funcionando correctamente. Un método para verificar si los servicios están funcionando es el método preferido de distribución para verificar con el siguiente comando compartido.

Usar estado Comando para verificar si el servicio está activo o no. Si el servicio no se está ejecutando, puede iniciarlo con debajo de start comando

Si está usando una distribución que se refiere a Apache como Apache2, los comandos para usar la funcionalidad de Apache2 son los siguientes

service apache2 start
service apache2 stop
service apache2 restart
service apache2 reload
service apache2 status

Si está utilizando una distribución que hace referencia a Apache como httpd, los comandos son los siguientes:

service httpd start
service httpd stop
service httpd restart
service httpd reload
service httpd status

Los comandos para usar la funcionalidad de Nginx son los siguientes

service nginx start
service nginx stop
service nginx restart
service nginx reload
service nginx status

Paso 5:Verificación de la sintaxis del servidor web

Si su servidor web no se inicia, esto significa que puede haber un problema con su archivo de configuración.

Tanto Apache como Nginx necesitan una sintaxis de directiva correcta para poder leer los archivos. Los archivos de configuración se encuentran a continuación

Los directorios de configuración predeterminados para Apache son

Distribuciones Debian y Ubuntu:/etc/apache2/
Fedora, distribuciones de CentOS:/etc/httpd/

Los directorios de configuración para Nginx son

/etc/nginx/

Cada uno de estos servidores web también le brinda la posibilidad de verificar la sintaxis de configuración de sus archivos. Para verificar la sintaxis de sus archivos de configuración de Apache sin necesidad de reiniciar el servidor, puede ejecutar el siguiente comando en los sistemas Debian y Ubuntu

apache2ctl -t
httpd -t

Para verificar la sintaxis de configuración en Nginx, use el siguiente comando

nginx -t

Una vez que ejecute el comando anterior, recibirá un mensaje como Syntax OK o La prueba es exitosa Esto significa que no hay ningún error en la configuración de su servidor web. Si recibe un mensaje como "prueba fallida", hay un argumento no válido que se proporciona en el archivo de configuración y debe editarse.

Paso 6:¿El back-end de su base de datos funciona correctamente

Si configuró su sitio para conectarse con el back-end de la base de datos como MySQL, PostreSQL, MongoDB, etc., debe asegurarse de que esté en funcionamiento. Puede hacerlo cuando verificó el servidor web.

Ejecute el siguiente comando para verificar si su base de datos es MySQL/Mongod, sea cual sea la que esté ejecutando.

service mysql status
service mysqld status
service mongod status

Alternativamente, también puede verificar con el siguiente comando netstat

netstat -ntlp | grep mysql

Recibirá la salida como se muestra a continuación, si su MySQL está funcionando.

tcp 0 0 127.0.0.1:3306 0.0.0.0:* ESCUCHAR 3356/mysqld

Paso 7:Verifique si su servidor web/de aplicaciones puede conectarse al back-end de la base de datos

Aunque si su servidor web y el servidor de la base de datos están funcionando correctamente, en algún momento podemos enfrentar problemas con su conectividad ya que su aplicación no podrá conectarse a la base de datos con éxito.

Por ejemplo, en un sitio de WordPress, la configuración de conexión de la base de datos se puede probar con la configuración ubicada en el archivo wp-config.php. Debe verificar que DB_NAME, DB_USER y DB_PASSWORD sean correctos para que su sitio se conecte a la base de datos.

Puede probar si el archivo tiene la información correcta intentando conectarse a la base de datos manualmente cambiando el valor apropiado en el siguiente comando

mysql -hDB_Host -uDB_USER -pDB_PASSWORD 

Paso 8:Asegúrese de que los puertos estén abiertos

Incluso si toda la configuración y la conectividad son correctas, algunas veces no podrá acceder al sitio ya que los puertos configurados deben ser accesibles. Los servidores web se ejecutan en el puerto 80 para el tráfico web normal y utilizan el puerto 443 para el tráfico cifrado con SSL.

Puede verificar si los puertos configurados están abiertos con el comando telnet

telnet your_server_ip 80
telnet your_server_ip 443

Obtendrá un resultado como el siguiente si sus puertos están abiertos

e2e@compaqportátil:~$ telnet xx.xx.xx.xx 80
Probando xx.xx.xx.xx…
Conectado a xx.xx.xx.xx.
El carácter de escape es '^]'.

También puede verificar si su aplicación/servidor web puede conectarse al puerto de su base de datos en el back-end. El servidor MySQL se ejecuta de manera predeterminada en el puerto 3306

telnet your_database_server_ip 3306

Si no se puede acceder a sus puertos web o puertos de base de datos, debe consultar la configuración de su cortafuegos. Es posible que deba abrir el puerto 80, el puerto 443 o el puerto 3306 respectivamente.

Paso 9:Verificación de la configuración de DNS

También debe asegurarse de que su dominio apunte correctamente a la IP del servidor. Si puede acceder al sitio con IP y no con su nombre de dominio, es posible que deba revisar su configuración de DNS.

Puede verificar si su sitio apunta a la IP correcta con dig debajo comando

dig A example.com +short

Obtendrá el resultado como se muestra a continuación

e2e@compaqlaptop:~$ cavar Un ejemplo.com +corto
xx.xx.xx.xx
e2e@compaqportátil:~$

Aparte de eso, verifique sus archivos de host virtual Apache o los archivos de bloque del servidor Nginx para asegurarse de que estén configurados para responder a las solicitudes de su dominio.

Conclusión

Esperamos que los consejos de solución de problemas mencionados anteriormente lo hayan ayudado a localizar y solucionar algunos de los problemas comunes que enfrentan los administradores cuando intentan poner en funcionamiento sus sitios. Si encuentra algún problema con los pasos mencionados anteriormente, no dude en discutir en los comentarios.


Ubuntu
  1. Cómo solucionar problemas cuando su sitio está inactivo en un servidor Linux

  2. Cómo solucionar problemas cuando su sitio está inactivo en un servidor Linux

  3. ¿Cómo monitorear su servidor Linux?

  4. Cómo instalar un entorno de escritorio en su servidor Linux sin cabeza

  5. Cómo instalar Nextcloud con Docker en su servidor Linux

Cómo verificar la carga de su servidor en el sistema Linux

Cómo verificar el tiempo de actividad de su servidor Linux

Cómo SSH en su servidor Linux desde Windows

Cómo configurar un demonio Rsync en su servidor Linux

Cómo:usar lsof:10 comandos esenciales para solucionar problemas de su servidor Linux

Cómo configurar un cortafuegos en su servidor Linux