Назад | Перейти на главную страницу

Служба httpd не запускается автоматически

Я скомпилировал Apache и PHP из исходного кода на сервере RedHat, но при этом я забыл установить httpd как услуга.

Файлы, используемые для компиляции Apache 2.4.7

Команда, используемая для компиляции Apache 2.4.7

./configure --prefix=/etc/apache247 --with-included-apr --with-pcre --enable-so --enable-rewrite=shared --with-layout=Apache --enable-modules=most --enable-mods-shared=all;

Каталог Apache 2.4.7

Скрипт init.d для запуска Apache 2.4.7

Я нашел этот скрипт в stackoverflow. Это не мое и не официальное.

Некоторые пользователи сказали мне, что в папке apache есть скрипт, но я не нашел.

Если вы предпочитаете текст:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          apache247
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: apache247
# Description: Start apache247
### END INIT INFO

case "$1" in
start)
        echo "Starting Apache ..."
        # Change the location to your specific location
        /etc/apache247/bin/apachectl start
;;
stop)
        echo "Stopping Apache ..."
        # Change the location to your specific location
        /etc/apache247/bin/apachectl stop
;;
graceful)
        echo "Restarting Apache gracefully..."
        # Change the location to your specific location
        /etc/apache247/bin/apachectl graceful
;;
restart)
        echo "Restarting Apache ..."
        # Change the location to your specific location
        /etc/apache247/bin/apachectl restart
;;
*)
        echo "Usage: '$0' {start|stop|restart|graceful}"
        exit 64
;;
esac
exit 0

ntsysv

Я использую эту команду для проверки сервисов RedHat. Итак, я поставил сценарий init.d в правильной папке - /etc/init.d/ - но apache2 скрипт здесь не появляется.

И после перезапуска сервера apache не запускался автоматически.

Итак, что случилось?

Не знаю, в каком журнале я получаю эту ошибку скриптов запуска.


Установлен ли apache в /etc/apache247/bin/apachectl ?

Потому что этот скрипт изучает apache в этой папке.

Если он не установлен по этому пути, просто отредактируйте файл инициализации, чтобы он указывал на нужную папку.

Похоже, вам нужно зарегистрировать сценарий инициализации с помощью chkconfig --add apache247. Затем вы можете пометить его как «включено» для уровней запуска по умолчанию с помощью chkconfig apache247 on. Перезагрузка должна подтвердить, что это будет работать должным образом.