Neden bazı yapılandırma bilgilerini conf / httpd.conf dosyasına ve bazılarını conf.d klasöründeki dosyalara koymalısınız?


11

Ana apache yapılandırma dosyası /etc/httpd/conf/httpd.confbenim CentOS sistemimde ve bir satır var:

Include conf.d/*.conf

Inside conf.d çoğunlukla böyle bir şey yapan dosyalardır:

LoadModule auth_kerb_module modules/mod_auth_kerb.so

Ancak, orada yapılandırılmış ve kendi yapılandırma dosyalarına sahip başka siteler de vardır. Bu iyi düşünülmemiş miydi yoksa bir şey mi kaçırıyorum?

Yanıtlar:


8

Yapılandırma dosyalarını ayırmak onları yönetmenin bir yoludur. Bir modüle özgü yapılandırma satırlarını kendi dosyalarına koyarak, modülleri etkinleştirmek ve devre dışı bırakmak çok daha kolay hale gelir. Ayrıca bunları yönetmeye de yardımcı olur, çünkü artık yalnızca küçük bir yapılandırma dosyanız var. (500 satırlık httpd.conf dosyasını açtığınızı ve yanlış bir seçenek aradığınızı düşünün.)

Farklı sistemlerin apache yapılandırma dosyalarını ayırmak için farklı yolları vardır. Örneğin benim Gentoo üzerinde bulunmaktadır modules.d/ve vhosts.d/benim Ubuntu varken conf.d/, mods-available/, mods-enabled/, sites-available/ve sites-enabled/. İsimle ne yaptıklarını tahmin edebilir veya Includesatırlar için httpd.conf'un içine bakabilirsiniz .


3

Apache'nin HTTPd'sine işlevsellik sağlayabilen birkaç paket olduğundan, temel paket, temel ayarların çoğunu sağlayan bir httpd.conf kurar ve mod_ssl, nagios ve php gibi diğer paketlerin de eklenmesi gereken yapılandırma dosyaları vardır. paketlemek. Red Hat paketleyicileri, bu paketler için yapılandırmayı bırakmak üzere conf.d dizinini kullanır, aksi takdirde her paket için httpd.conf dosyasını değiştirmeniz gerekir; bu, paket kurulumu sırasında otomatikleştirilmesi zor bir şeydir.


0

Apache'de tam olarak hangi yapılandırma dosyalarının nereye gittiğine dair çok iyi belgelenmiş bir özellik olmadığını buldum. Özellikle son zamanlarda varsayılanın bunu nasıl değiştirdiğinden beri. Kaynaktan mı yoksa bir paketten mi kurdunuz? Paketler, özellikle debian paketleri, apache kaynağını hiç takip etmiyor gibi görünüyor.

Apache ile çok şey yaptığımdan beri bir süredir, ancak hatırlarsam, conf.d /, yayınladığınız gibi daemon modüllerini veya ffi veya bunun gibi şeyleri yüklemeyi nereye koyacağınızdır.

Conf / siteye özgü yapılandırma dosyalarının gittiği yerdir.

Benimki böyle görünüyor, bu kaynaktan geliyor.

 % 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

Ama aynı zamanda bu canlı bir sunucu olmadığını ve özellikle Wt test etmek için bu apache kurulum inşa unutmayın


Apache'nin wiki'sindeki bu belgeye bir göz atın: DistrosDefaultLayout
nozimica
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.