Слайд 1Запуск, перезапуск и останов сервера
Слайд 2Момент запуска Apache на Linux
Основным исполняемым модулем сервера является программа bin/httpd.
Слайд 3В Unix программах httpd представляет собой демон, выполняющийся в фоновом режиме
и обслуживающий поступающие запросы.
Слайд 5Если в директиве Listen в конфигурационном файле указано значение 80 (задаваемое
по умолчанию) или любое другое значение порта меньшее 1024, то для запуска Apache необходимо быть привилегированным пользователем, так как Apache придется подключаться к привилегированному порту. После того, как сервер запустился и выполнил ряд подготовительных операций, таких как открытие своих log-файлов, он порождает несколько процессов потомков, которые и будут выполнять всю работу по обработке запросов от клиентов. Основной процесс httpd выполняется с правами привилегированного пользователя, в то время как процессы потомки имеют меньший приоритет. Все это контролируется МП-модулем (мульти-процессный модуль) , который компилируется вместе с сервером.
Слайд 6Для запуска демона httpd лучше всего использовать файл apachectl. Этот файл
устанавливает ряд переменных окружения, необходимых для правильной работы сервера под некоторыми операционными системами, а затем запускает исполняемый файл httpd . Скрипт apachectl передаст серверу любую командную строку, так что при вызове можно указывать в его командной строке все необходимые для сервера опции. Можно также вручную внести некоторые изменения в скрипт apachect , в частности, изменив значение переменной HTTPD для запуска Apache из другого каталога, и указав опции, которые будут передаваться серверу каждый раз при его запуске.
Слайд 7Первым делом httpd находит и считывает конфигурационный файл httpd.conf. Путь к
этому файлу задается еще во время сборки сервера, но его можно изменить и после этого, запустив сервер с опцией -f, как это показано в примере:
/usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd.conf
Слайд 8Если во время запуска не возникло никаких проблем, то сервер отсоединится
от консоли и приглашение на ввод командной строки вернется к пользователю практически мгновенно. Это указывает на то, что сервер запустился и теперь выполняет свою работу. Теперь можно, используя браузер, подключиться к нему и увидеть тестовую страницу, находящуюся в каталоге DocumentRoot, а также локальную копию документации.
Слайд 9Запустить, остановить и перезапустить сервер можно следующим образом:
/httpd-install> bin/apachectl start
/httpd-install> bin/apachectl
stop
/httpd-install> bin/apachectl restart
Слайд 10Запуск под ОС Windows
Несмотря на то, что Apache преимущественно используется на
Unix и Linux системах он, с тем же успехом и без потери в функциональности, может использоваться и на Windows. Использовать Apache на Windows можно как для WEB разработки, так и для полноценного хостинга сайтов на PHP CMS.
Слайд 12Удобным вариантом будет использование Apache как системной службы Windows, что позволит
запускать и останавливать Apache в автоматическом, полуавтоматическом режимах и вручную. Для этих действий можно будет использовать утилиту управления Apache службой Apache24\bin\ApacheMonitor.exe, которая входит в данный дистрибутив Apache.
Слайд 13ApacheMonitor.exe это маленькая утилита, представлявшая собой оконную программу, висящую в системном
трее и позволяющую выполнять запуск и остановку службы Apache и контролировать ее состояние. Такой подход дает некоторое удобство в работе с Web-сервером Apache как системной службой Windows.
Слайд 14Для инсталляции Apache как системной службы Windows нужно выполнить в консоли
команду:
httpd.exe -k install
Для деинсталяции Apache как системной службы Windows нужно выполнить в консоли команду:
httpd.exe -k uninstall
Слайд 15После установки Apache в качестве системной службы Windows вы можете настроить
работу этой службы стандартным для всех служб Windows способом в Консоли управления Microsoft - оснастке services.msc запустив ее в cmd.exe командой:
>services.msc
Слайд 16или воспользовавшись другими стандартными способами:
Меню Пуск, в строке поиска наберите services.msc
и нажмите клавишу Enter;
Нажмите сочетание клавиш Win+R, наберите services.msc и нажмите клавишу Enter;
Через оконный интерфейс по пути: Пуск->Панель управления->Администрирование->Службы
Слайд 17Установленная служба Apache будет иметь:
· название: Apache2.4;
·
описание: Apache/2.4.23 (Win64) OpenSSL/1.0.2j;
· тип запуска: Автоматически.
Настройте необходимый вам вариант запуска службы стандартным способом.
Слайд 18Обычный запуск, перезапуск и завершение работы службы Apache обычно выполняется через
Apache Service Monitor с помощью команд, например, NET START Apache и NET STOP Apache или через обычное управление службами Windows. Прежде чем запускать Apache в качестве сервиса любым способом, вы должны проверить конфигурационный файл службы, используя:
httpd.exe -n "MyServiceName" -t
Слайд 19Также можно управлять службой Apache с помощью команд командной строки. Чтобы
запустить установленную службу Apache, надо использовать следующее:
httpd.exe -k start -n "MyServiceName"
Чтобы остановить службу Apache через ключи командной строки, используйте следующее:
httpd.exe -k stop -n "MyServiceName"
Слайд 20или же
httpd.exe -k shutdown -n "MyServiceName"
Также можно перезапустить запущенную службу и
принудительно перечитать ее конфигурационный файл, используя:
httpd.exe -k restart -n "MyServiceName"
Слайд 21Так же, для управления службой Apache2.4 вы можете воспользоваться описанной выше
программой из дистрибутива сервера Apache24\bin\ApacheMonitor.exe. Для этого запустите указанный файл ApacheMonitor.exe и воспользуйтесь для запуска или остановки Apache кнопками в окне данной программы.
Слайд 22Скриншот запущенной программы ApacheMonitor.exe
Слайд 23Далее можно приступать к индивидуальной настройке Web-сервера и организации виртуальных хостов.
Слайд 24Режим отладки
Большое количество модулей и, к сожалению, не всегда качественно написанные
приложения порождают проблемы, которые бывает непросто решить. Поэтому очень важно иметь под рукой инструментарий для быстрой локализации и устранения неполадки.
При локализации причины сбоя это самый первый и необходимый шаг.
Обычно apache порождает несколько своих копий при запуске, которые ожидают запросов от пользователей. Запуск сервера в единственном экземпляре облегчит отладку. Есть два способа запустить "одиночный" сервер: первый заключается в ручном изменении количества копий (форков - fork) и нитей в конфиг-файле. Второй проще, можно запустить сервер с опцией "-X" ./httpd -X
Слайд 25В таком режиме работы сервер не порождает новых форков (копий) и
не теряет связи с родительским терминалом. Благодаря этому все коммуникации идут через один процесс, к которому легко можно подключить какой-нибудь отладчик.