It Hints
Search
Close this search box.
Всем при­вет — сего­дняш­нее утро нача­лось с того что я заме­тил что нет досту­па к моим сай­там на домаш­нем Web сер­ве­ре. Зай­дя в админ­ку сер­ве­ра, я уви­дел что Apache сер­вер лежит, а при его запус­ке выда­ет­ся вот такая ошиб­ка
(20014) Internal error (specific information not available): AH00058: Error retriving pid file logs/httpd.pid
AH00059: Remove it before continuing if it is coppupted
Пере­за­груз­ка кста­ти не помог­ла, сер­вер сра­зу падал. 
(20014) Internal error (specific information not available): AH00058: Error retriving pid file logs/httpd.pid AH00059: Remove it before continuing if it is coppupted

Лечит­ся дан­ная про­бле­ма доволь­но лег­ко — нам нуж­но уда­лить лог-файл httpd.pid после чего Apache сер­вер запу­стит­ся. В aaPanel дан­ный лог нахо­дит­ся в

/www/server/apache/logs

Уда­ля­ем и вуа­ля — сер­вер в работе.

Ну и так как Apache сер­вер может упасть в любое вре­мя, то ниже я наки­дал скрипт с ком­мен­та­ри­я­ми, кото­рый про­ве­ря­ет — запу­щен ли Апач ? Если запу­щен то ниче­го не дела­ет, а если не запу­щен то уда­ля­ет httpd.pid и запус­ка­ет сер­вер. Я вста­вил этот скрипт в Cron с пери­о­дич­но­стью раз в 3 минуты.

#!/bin/bash

# Путь к файлу PID Apache сервера
APACHE_PID_FILE="/www/server/apache/logs/httpd.pid"

# Проверяем, запущен ли Apache сервер
if ! pgrep -x "httpd" > /dev/null; then
    # Если Apache сервер не запущен, удаляем файл PID
    if [ -f "$APACHE_PID_FILE" ]; then
        rm "$APACHE_PID_FILE"
    fi
    # Запускаем Apache сервер
    echo "Запускаем Apache server."
    /www/server/apache/bin/apachectl start
else
    # Если Apache сервер запущен, ничего не делаем
    echo "Apache сервер уже запущен."
fi

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

Facebook
Twitter
Email
VK
WhatsApp
Telegram