Раздел помощи SpaceWeb

Базовая диагностика при ошибках в работе сайта

В работе сайта на VDS могут возникать разные неполадки: недоступность сайта, ошибки 500, 502, 504, ошибки базы данных. Для исправления неполадок выполняется базовая диагностика, которая поможет найти причину или ускорит обработку заявки при обращении в службу поддержки.

Доступен ли сервер из внешней сети?

Доступность сервера можно проверить с помощью одного из бесплатных сервисов. Найти его можно по запросам "ping online", "проверка доступности" или "сервис ping"

Также проверить доступность сервера можно из командной строки компьютера следующей командой:

ping ip-адрес_сервера

Если сервер доступен, в выводе сразу начнет отображаться информация об отправке пакетов и получении ответов от сервера. Это выглядит так:

Для остановки выполнения команды нажмите Ctrl+C.

Если обмен пакетами не происходит - сервер недоступен. В этом случае следует проверить сетевые настройки на сервере, используя подключение по SSH или VNC-консоль в панели управления.

После подключения к серверу следует выполнить следующую команду:

ifconfig

Пример вывода с корректными настройками:

Если строка inet addr пустая, есть ошибка с сетевыми настройками, которую можно попробовать решить настройкой статического IP-адреса.

Запущены ли службы для работы сайтов?

Для проверки работы служб необходимо подключиться к серверу по SSH или использовать VNC-консоль в панели управления.

Проверки выполняются командами следующего вида:

service имя_службы status

# Apache2:
service apache2 status
# или
service httpd status

# Nginx:
service nginx status

# MySQL:
service mysql status
service mysqld status

# MariaDB:
service mariadb status

Примеры запущенных служб:

Если в выводе не фигурирует слово running, то служба не запущена.

Попытаться запустить службу можно следующими командами:

service имя_службы status

# Apache2:
service apache2 start
# или
service httpd start

# Nginx:
service nginx start

# MySQL:
service mysql start
service mysqld start

# MariaDB:
service mariadb start

После запуска службы следует повторно проверить работу сайтов. Если ситуация сохраняется, требуются дальнейшие проверки.

Состояние дискового пространства

Общую информацию можно получить командой:

df -h

В выводе будут данные о размере диска и доступном объеме.

Если дисковое пространство исчерпано, необходимо принять меры: перейти на тариф выше или удалить ненужные файлы

Для работы с дисковым пространством можно использовать утилиты ncdu и du. Подробнее о работе с ними - в статье Анализ дискового пространства: ncdu, du.

Состояние inodes

Если индексные дескрипторы - inodes - исчерпаны, это тоже может быть причиной неполадок. В работе сервера начнут возникать ошибки и появляться уведомления о недостаточном дисковом пространстве.

Подробнее о диагностике и устранении проблемы - в статье Переполнение inodes.

Наличие необходимых прав для директорий с логами

Необходимо проверить, назначены ли права на запись для директорий, в которые пишутся логи основных служб сервера.

Это директории:

/var/log/mysql/
/var/log/nginx/
/var/log/apache2/
# или
/var/log/httpd/

Проверить наличие нужных прав можно командой:

ls -lah /var/log/

Пример вывода:

Здесь видно, что у каталогов установлены корректные права, а именно - у владельца есть права на запись, чтение и исполнение (rwx):

drwxr-x--- 2 root adm 4,0K янв 31 10:42 apache2
drwxr-x--- 2 mysql adm 4,0K янв 31 10:45 mysql
drwxr-xr-x 2 root adm 4,0K янв 31 10:52 nginx

Если у каталога нет нужных прав, их можно установить командой chmod:

chmod -R 755 /путь/к/каталогу/

# Например
chmod -R 755 /var/log/nginx/

В данном случае будут установлены права 755, т.е. rwxr-xr-x, то есть полный набор прав для владельца и права на чтение и исполнение - для остальных.

Если при проверке видно, что директория с логами той или иной службы отсутствует, ее необходимо создать командой mkdir и установить нужные права, например:

mkdir /var/log/mysql/
chmod -R 775 /var/log/mysql/

После того, как выполнены проверки дискового пространства, inodes и прав, необходимо повторно запустить службы и проверить работу сайта.

Если часть служб по-прежнему не запускается или сохраняются неполадки в работе сайта, необходимо создать запрос в техническую поддержку и сообщить полученную в ходе диагностики информацию. Для дальнейшей диагностики со стороны тех. поддержки также понадобится root-доступ к серверу.