- Как запустить, остановить или перезапустить Apache
- Подготовка
- Запуск, остановка и перезапуск Apache в Ubuntu и Debian
- Запуск, остановка и перезапуск Apache на RHEL / CentOS
- Выводы
- Полезные команды для управления Apache в Linux
- Про Linux за 5 минут
- Установка Apache Server
- Проверка версии Apache
- Перезапуск Apache Ubuntu
- Перезапуск Apache в Ubuntu
- Перезапуск Apache в панели управления
- Выводы
Как запустить, остановить или перезапустить Apache
Apache — это кроссплатформенный HTTP-сервер с открытым исходным кодом. Он обладает мощными функциями и может быть расширен с помощью большого количества модулей.
Если вы разработчик или системный администратор, скорее всего, вы имеете дело с Apache на регулярной основе.
Запуск, остановка и перезапуск / перезагрузка являются наиболее распространенными задачами при работе с веб-сервером Apache. Команды для управления службой Apache различны в разных дистрибутивах Linux.
Большинство последних дистрибутивов Linux используют SystemD в качестве системы инициализации и диспетчера служб по умолчанию. Старые дистрибутивы основаны на SysVinit и используют сценарии инициализации для управления службами. Еще одно отличие — это название сервиса. В Ubuntu и Debian служба Apache называется apache2 , а в системе на основе Red Hat, такой как CentOS, имя службы — httpd .
В этой статье объясняется, как запустить, остановить и перезапустить Apache в наиболее популярных дистрибутивах Linux.
Подготовка
В инструкциях предполагается, что вы вошли в систему как пользователь root или пользователь с привилегиями sudo .
И служебные блоки SystemD, и сценарий SysVinit принимают следующие аргументы для управления службой Apache:
- start : start службу Apache.
- stop : завершает работу службы Apache.
- restart : останавливает, а затем запускает службу Apache.
- reload : аккуратно перезапускает службу Apache. При перезагрузке основной процесс Apache завершает дочерние процессы, загружает новую конфигурацию и запускает новые дочерние процессы.
- status : показывает статус услуги.
Запуск, остановка и перезапуск Apache в Ubuntu и Debian
SystemD — это системный и сервисный менеджер для последних выпусков Ubuntu ( 20.04 18.04 ) и Debian ( 10 , 9 ).
Чтобы запустить службу Apache, выполните следующую команду:
sudo systemctl start apache2
Чтобы остановить службу Apache, выполните следующую команду:
sudo systemctl stop apache2
Каждый раз, когда вы вносите изменения в конфигурацию Apache, вам необходимо перезапускать серверные процессы. Чтобы перезапустить службу Apache, запустите:
sudo systemctl restart apache2
Более старые (EOLed) версии Ubuntu или Debian используют сценарии init.d для запуска, остановки и перезапуска демона Apache:
sudo service apache2 start
sudo service apache2 stop
sudo service apache2 restart
Запуск, остановка и перезапуск Apache на RHEL / CentOS
Systemd — это системный и сервисный менеджер для RHEL / CentOS 7 и 8 .
sudo systemctl start httpd
sudo systemctl stop httpd
Перезапустите службу Apache:
sudo systemctl restart httpd
Если у вас есть система CentOS 6 или более ранней версии, которая использует SysV, используйте следующие команды для запуска, остановки и перезапуска демона Apache:
sudo service httpd start
sudo service httpd stop
sudo service httpd restart
Выводы
Мы показали вам, как запускать, останавливать и перезапускать веб-сервер Apache в различных системах Linux.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.
Полезные команды для управления Apache в Linux
В этом руководстве мы опишем некоторые из наиболее часто используемых команд управления службами Apache (HTTPD) , которые полезно знать, разработчику или системному администратору, и держать эти команды под рукой. Мы покажем команды для Systemd и SysVinit.
Убедитесь, что следующие команды должны выполняться от имени пользователя root или sudo и работать с любым дистрибутивом Linux, таким как CentOS, RHEL, Fedora, Debian и Ubuntu.
Про Linux за 5 минут
Установка Apache Server
$ sudo apt install apache2 [On Debian/Ubuntu] $ sudo yum install httpd [On RHEL/CentOS] $ sudo dnf install httpd [On Fedora 22+] $ sudo zypper install apache2 [On openSUSE]
Проверка версии Apache
Чтобы проверить установленную версию вашего веб-сервера Apache в вашей системе Linux, выполните следующую команду.
Server version: Apache/2.4.6 (CentOS) Server built: May 5 2019 01:47:09
Если вы хотите увидеть номер версии Apache и параметры компиляции, используйте флаг -V, как показано ниже.
Server version: Apache/2.4.6 (CentOS) Server built: May 5 2019 01:47:09 Server's Module Magic Number: 20120211:24 Server loaded: APR 1.4.8, APR-UTIL 1.5.2 Compiled using: APR 1.4.8, APR-UTIL 1.5.2 Architecture: 64-bit Server MPM: prefork threaded: no forked: yes (variable process count) Server compiled with. -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_SYSVSEM_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT=256 -D HTTPD_ROOT="/etc/httpd" -D SUEXEC_BIN="/usr/sbin/suexec" -D DEFAULT_PIDLOG="/run/httpd/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf"
Проверка на ошибки синтаксиса конфигурации Apache
Чтобы проверить ваши файлы конфигурации Apache на наличие любых синтаксических ошибок, выполните следующую команду, которая проверит правильность файлов конфигурации, прежде чем перезапускать службу.
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using merionet.ru. Set the 'ServerName' directive globally to suppress this message Syntax OK
Запуск сервиса Apache
------------ On CentOS/RHEL ------------ $ sudo systemctl start httpd [On Systemd] $ sudo service httpd start [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl start apache2 [On Systemd] $ sudo service apache2 start [On SysVInit]
Включение службы Apache
Предыдущая команда пока только запускает службу Apache, чтобы включить автозапуск при загрузке системы, выполните следующую команду.
------------ On CentOS/RHEL ------------ $ sudo systemctl enable httpd [On Systemd] $ sudo chkconfig httpd on [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl enable apache2 [On Systemd] $ sudo chkconfig apache2 on [On SysVInit]
Перезапуск службы Apache
------------ On CentOS/RHEL ------------ $ sudo systemctl restart httpd [On Systemd] $ sudo service httpd restart [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl restart apache2 [On Systemd] $ sudo service apache2 restart [On SysVInit]
Просмотр состояния сервиса Apache
Чтобы проверить информацию о состоянии времени выполнения службы Apache, выполните следующую команду.
------------ On CentOS/RHEL ------------ $ sudo systemctl status httpd [On Systemd] $ sudo service httpd status [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl status apache2 [On Systemd] $ sudo service apache2 status [On SysVInit]
Перезагрузка сервиса Apache
Если вы внесли какие-либо изменения в конфигурацию сервера Apache, вы можете указать службе перезагрузить свою конфигурацию, выполнив следующую команду.
------------ On CentOS/RHEL ------------ $ sudo systemctl reload httpd [On Systemd] $ sudo service httpd reload [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl reload apache2 [On Systemd] $ sudo service apache2 reload [On SysVInit]
Остановка службы Apache
------------ On CentOS/RHEL ------------ $ sudo systemctl stop httpd [On Systemd] $ sudo service httpd stop [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl stop apache2 [On Systemd] $ sudo service apache2 stop [On SysVInit]
Показать справку Apache Command
И последнее, но не менее важное: вы можете получить справку о служебных командах Apache в systemd, выполнив следующую команду.
Usage: httpd [-D name] [-d directory] [-f file] [-C "directive"] [-c "directive"] [-k start|restart|graceful|graceful-stop|stop] [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X] Options: -D name : define a name for use in directives -d directory : specify an alternate initial ServerRoot -f file : specify an alternate ServerConfigFile -C "directive" : process directive before reading config files -c "directive" : process directive after reading config files -e level : show startup errors of level (see LogLevel) -E file : log startup errors to file -v : show version number -V : show compile settings -h : list available command line options (this page) -l : list compiled in modules -L : list available configuration directives -t -D DUMP_VHOSTS : show parsed vhost settings -t -D DUMP_RUN_CFG : show parsed run settings -S : a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG -t -D DUMP_MODULES : show all loaded modules -M : a synonym for -t -D DUMP_MODULES -t : run syntax check for config files -T : start without DocumentRoot(s) check -X : debug mode (only one worker, do not detach)
На этом пока все! В этой статье мы объяснили наиболее часто используемые команды управления службами Apache / HTTPD, которые полезно будет знать, включая запуск, включение, перезапуск и остановку Apache.
Перезапуск Apache Ubuntu
Apache — это один из самых популярных веб-серверов, которые используются для размещения сайтов. Наверное, он даже популярнее, чем Nginx, поскольку его намного проще настроить и есть поддержка изменения конфигурации для каждой отдельной папки с помощью файлов htaccess, причем сразу же, на лету. Но когда вы поменяли глобальные настройки Apache или изменили параметры PHP, Apache необходимо перезагрузить.
В этой небольшой статье мы рассмотрим какими способами выполняется перезапуск apache ubuntu и как это делать более правильно.
Перезапуск Apache в Ubuntu
Как и в большинстве других дистрибутивов, в Ubuntu используется система управления службами systemd. Именно ее мы и будем использовать для решения наших задач. Сначала давайте посмотрим запущен ли Apache и не выдает ли он каких ошибок:
sudo systemctl status apache2
В отличие от CentOS и других RedHat дистрибутивов, здесь Apache называется не httpd, а apache2. Поэтому если вы попытаетесь делать что-то с httpd, то у вас ничего не выйдет.
У нас есть два различных пути перезапуска Apache и несколько команд для выполнения нужных операций:
- Вы можете полностью перезапустить Apache, программа закроется и откроется заново, собьется вся статистика и оборвутся соединения. Некоторое время, пока сервис будет перезагружаться, пользователи не смогут получить к нему доступ. restart (stop start);
- Можно инициировать обновление конфигурационных файлов. В таком случае программа рекомендует своим дочерним процессам завершиться, когда они закончат обработку соединений и обновит свою конфигурацию без фактического перезапуска. Такой способ позволяет минимизировать потери пользователей. reload, graceful.
Для перезагрузки можно использовать три команды, это systemd, service и apachectl. Разработчики Apache рекомендуют использовать apachectl, но все другие команды просто являются оболочками для этой. Сначала systemctl:
sudo systemctl restart apache2
sudo systemctl reload apache2
Если вы хотите использовать service, то можно не писать sudo, тогда система спросит вас пароль сама:
service restart apache2
service reload apache2
Последний способ перезагрузки Apache — использовать apachectl:
apachectl -k restart
apachectl -k graceful
В каждой паре первая команда означает жесткую перезагрузку, а вторая — обновление конфигурации без перезагрузки сервиса. Вместо apachectl еще можно использовать ее алиас — apache2ctl. После перезагрузки посмотрите все ли правильно работает:
sudo systemctl status apache2
Более подробную информацию можно увидеть выполнив:
Если вас интересует ответ на вопрос, как запустить apache, то используйте команду start:
$ sudo systemctl start apache2
Перезапуск Apache в панели управления
Если вы используете панель управления сервером через веб-интерфейс, например, VestaCP, это сделать достаточно просто. Сначала откройте вкладку «Server»:
Затем просто найдите в списке Apache и нажмите «Restart»:
Выводы
В этой статье мы рассмотрели как выполняется перезапуск apache ubuntu, несмотря на то, что это очень просто и вряд ли может вызвать проблемы, есть несколько способов, и теперь вы их знаете. Если у вас остались вопросы, спрашивайте в комментариях.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.