Навіщо ставити деяку інформацію конфігурації в conf / httpd.conf, а іншу - у файли у папці conf.d?


11

Основний конфігураційний файл apache знаходиться в /etc/httpd/conf/httpd.confмоїй системі CentOS, в ньому є рядок:

Include conf.d/*.conf

Всередині conf.d - це переважно файли, які роблять щось подібне:

LoadModule auth_kerb_module modules/mod_auth_kerb.so

Але є й інші сайти, які там налаштовані і мають власні конфігураційні файли. Це було недостатньо продумано чи я щось пропускаю?

Відповіді:


8

Розділення конфігураційних файлів - це спосіб управління ними. Поміщаючи конфігураційні лінії, характерні для модуля, у власні файли, стає набагато простіше включати та вимикати модулі. Це також допомагає керувати ними, оскільки тепер у вас є лише невеликий файл конфігурації для редагування. (Уявіть, що ви відкриєте httpd.conf 500 рядків і шукаєте неправильний варіант.)

Здається, що різні системи мають різні способи розділення файлів конфігурації apache. Наприклад на моєму Gentoo є modules.d/і vhosts.d/, в той час як на моєму Ubuntu є conf.d/, mods-available/, mods-enabled/, sites-available/і sites-enabled/. Ви можете здогадатися, що вони роблять за назвою, або загляньте всередині httpd.conf для Includeрядків.


3

Оскільки існує декілька пакетів, які можуть надати функціональність HTTPd Apache, базовий пакет встановлює httpd.conf, який забезпечує більшість основних параметрів, а інші пакети, такі як mod_ssl, nagios та php, мають конфігураційні файли, які потрібно включити пакет. Пакувальники Red Hat використовують каталог conf.d, щоб скинути конфігурацію для цих пакетів, інакше їм потрібно буде змінити httpd.conf для кожного пакету, що важко автоматизувати під час встановлення пакета.


0

Я виявив, що не дуже добре задокументована специфікація того, куди саме йдуть файли конфігурації в апачі. Тим більше, що нещодавно вони змінили, як це робиться за замовчуванням. Ви встановили з джерела чи з пакета? Пакети, особливо пакунки для debian, схоже, зовсім не відповідають джерелам апачі.

Минуло багато часу, коли я багато працював з apache, але якщо я пам’ятаю, conf.d / - це те, де ви б помістили завантаження демонових модулів, як те, що ви розмістили, або ffi або подібні речі.

Хоча conf / - це те, куди йдуть файли конфігурації для конкретних сайтів.

Ось як виглядає моя, це встановлено з джерела.

 % ll /opt/apache2
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 bin/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 build/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 cgi-bin/
drwxr-xr-x  4 root 4.0K 2010-10-28 15:54 conf/
drwxr-xr-x  3 root 4.0K 2010-10-25 14:14 error/
drwsrwxrwx  3 www  4.0K 2010-10-28 13:06 htdocs/
drwxr-xr-x  3 root 4.0K 2010-10-25 14:14 icons/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:14 include/
drwxr-xr-x  3 root 4.0K 2010-10-25 14:14 lib/
drwxr-xr-x  3 root 4.0K 2010-10-28 16:11 logs/
drwxr-xr-x  4 root 4.0K 2010-10-25 14:14 man/
drwxr-xr-x 14 root  12K 2010-10-14 11:45 manual/
drwxr-xr-x  2 root 4.0K 2010-10-25 14:20 modules/
 % ll /opt/apache2/conf
total 88K
drwxr-xr-x 2 root 4.0K 2010-10-28 15:55 extra/
drwxr-xr-x 3 root 4.0K 2010-10-25 14:14 original/
-rw-r--r-- 1 root  14K 2010-10-28 15:54 httpd.conf
-rw-r--r-- 1 root  13K 2010-10-25 14:14 magic
-rw-r--r-- 1 root  45K 2010-10-25 14:14 mime.types



% ll /opt/apache2/conf/extra
total 60K
-rw-r--r-- 1 root  179 2010-10-28 15:31 20_mod_fastcgi.conf
-rw-r--r-- 1 root 2.8K 2010-10-25 14:14 httpd-autoindex.conf
-rw-r--r-- 1 root 1.7K 2010-10-25 14:14 httpd-dav.conf
-rw-r--r-- 1 root 2.3K 2010-10-25 14:14 httpd-default.conf
-rw-r--r-- 1 root 1.1K 2010-10-25 14:14 httpd-info.conf
-rw-r--r-- 1 root 5.0K 2010-10-25 14:14 httpd-languages.conf
-rw-r--r-- 1 root  906 2010-10-25 14:14 httpd-manual.conf
-rw-r--r-- 1 root 3.8K 2010-10-25 14:14 httpd-mpm.conf
-rw-r--r-- 1 root 2.2K 2010-10-25 14:14 httpd-multilang-errordoc.conf
-rw-r--r-- 1 root  10K 2010-10-25 14:14 httpd-ssl.conf
-rw-r--r-- 1 root  817 2010-10-25 14:14 httpd-userdir.conf
-rw-r--r-- 1 root 1.8K 2010-10-28 15:55 httpd-vhosts.conf

Але також зауважте, що це не живий сервер, і я створив цю установку apache спеціально для тестування Wt


Погляньте на цей документ у вікі Apache: DistrosDefaultLayout
nozimica
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.