Free bsd

Free BSD для початківців.
продовження. (початок )


Устанавлівка apache на FreeBSD

Після редагування конфіг файлу варто перевірити, що ви нічого в ньому не поламали і все в порядку (по крайней мере з синтаксисом). Для цього можна використовувати команду httpd -t, яка зчитує конфиг файл і httpd -t перевіряє його синтаксис.
% Httpd -t Syntax OK%
Якщо ви отримали помилку на зразок цієї:% httpd -t
Syntax error on line 355 of /usr/local/etc/apache/httpd.conf:
DocumentRoot must be a directory
%
Це означає, що у вас неправильно вказано шляхи і вам потрібно перевірити або написання шляху в конфіг файлі, або пересвідчитися, що така директорія є на файлової системи (скажімо за допомогою команди Is)
% Ls -al / data / sites / sitel total 26
drwxr- |xr- |X 5 wwwadmin www 512 Jan 13 13. 31
drwxr- |xr- |X CO root wheel 512 Jan 13 03. 39
-rw-r- •-г-1 wwwadmin www 751 Jan 13 03. 39. cshrc
-rw-r- •-г-1 wwwadmin www 248 Jan 13 03. 39 .login
-rw-r- •-г-1 wwwadmin www 158 Jan 13 03. 39 .login_conf
-rw --- 1 wwwadmin www 373 Jan 13 03. 39 .mail_aliases
-rw-r- •-г-1 wwwadmin www 331 Jan 13 03. 39 .mailrc
-rw-r- •-г-1 wwwadmin www 766 Jan 13 03. 39 .profile
-rw --- 1 wwwadmin www 276 Jan 13 03. 39 .rhosts
-rw-r- •-г-1 wwwadmin www 975 Jan 13 03. 39. shrc
drwxr- |xr- |X 2 wwwadmin www 512 Jan 13 13. 31 cgi-bin
drwxr- |xr- |X 2 wwwadmin www 512 Jan 13 13. 31 htdocs
drwxr- |xr- |X 2 wwwadmin www 512 Jan 13 13. 31 logs
%
Команда httpd -T перевіряє тільки синтаксис конфіга і не перевіряє httpd -Т правильність шляхів.

Тестування конфігурації хостів

> Httpd -S VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
_default_: 13015 gasparchilingarov.com (/etc/httpd/conf/httpd.conf:1291)
_default_: 13016 forum.gasparchilingarov.com (/etc/httpd/conf/httpd.conf:1310)
Syntax OK Qgasparch

>
В даному випадку сервери знаходяться на одному і тому-ж IP за замовчуванням (_default_), але на різних портах. У результатах виведення вказується в якому рядку конфиг файлу була задана конфігурація цього сервера.

apachectl - управління apache сервером

Вручну apache сервер можна запустити за допомогою команди apachectl start. Зупинка проводиться за допомогою команди apachectl stop. Можна змусити apache перечитати конфиг файл без рестарту сервера за допомогою команди apachectl graceful. У разі деяких змін, зокрема, що стосуються конфігурації портів, на яких слухає apache сервер, краще перезапустити його повністю за допомогою apachectl restart.

Як перевірити, що apache запущений?

Можна запустити команду 'ps ах' (в Linux - 'ps ах') і відфільтрувати звідти рядки, що стосуються лише apache сервера.
Остаточна команда вийде 'ps ах | grep httpd | grep -v grep '.
Якщо ця команда видає вам якийсь результат - то у вас запущений apache.
Ось типовий приклад, як виглядають процеси запущеного apache сервера.
aldan # ps -ax | grep httpd | grep -v grep
643. Ss 0. 03. 27 / usr / local / sbin / httpd -DSSL
651. I 0. 00. 17 / usr / local / sbin / httpd -DSSL
652. I 0. 00. 11 / usr / local / sbin / httpd -DSSL
653. I 0. 00. 04 / usr / local / sbin / httpd -DSSL
654. I 0. 00. 07 / usr / local / sbin / httpd -DSSL
655. I 0. 00. 14 / usr / local / sbin / httpd -DSSL
26265. I 0. 00. 10 / usr / local / sbin / httpd -DSSL
31168. w 0. 00. 10 / usr / local / sbin / httpd -DSSL
aldan #
Цей сервер запущений в режимі підтримки SSL з'єднань, тому у видачі команди ps видно ключ -DSSL.

Інший спосіб перевірити, що apache запущений

Інший спосіб перевірити, чи працює у вас apache - це просто приєднатися до нього з консолі. Для цього можна використовувати команду telnet. Виглядати сесія буде наступним чином:
Qaldan

Звіряча зупинка apache

Якщо вам потрібно зупинити будь-яку роботу apache сервера, то від імені httpd користувача root запустіть команду killall -9 httpd - це геть вб'є ВСЕ процеси apache сервера. Після цього допоможе тільки його старт заново. Якщо при цьому у вас клієнти щось качали з сайту - то. до побачення, клієнти. Вони всі будуть від'єднані.

Щоб apache запускався б при запуску системи додайте в файл / etc / гс. conf рядок apache_enable = "YES"

Після цього ви можете використовувати команду
/usr/local/etc/rc.d/apache start для запуску apache сервера. Для зупинки використовуйте /usr/local/etc/rc.d/apache stop і для перезапуску apache - /usr/local/etc/rc.d/apache restart
За допомогою цього ви можете оттестировать, як буде система запускати і зупиняти процес apache під час запуску і зупинки системи.
Якщо у вас раптом не запускається apache сервер за допомогою / usr / local / etc / гс .d / apache start, але все нормально працює при використанні apachectl start, то вам слід перевірити написання опції apache_enable в файлі конфігурації.

Схожі статті