Saya pikir semua jawaban ini tidak benar-benar menjawab pertanyaan. Level root dapat ditentukan dengan menjalankan perintah httpd -V
. Ini akan menunjukkan kepada Anda opsi apa yang digunakan oleh daemon Apache saat kompilasi. Inilah yang mengontrol di mana httpd
menentukan di mana mencari konfigurasi itu. file dan modul .so secara default.
Sebagai contoh:
% httpd -V
Server version: Apache/2.2.17 (Unix)
Server built: Dec 17 2010 11:58:24
Server's Module Magic Number: 20051115:25
Server loaded: APR 1.3.12, APR-Util 1.3.9
Compiled using: APR 1.3.12, APR-Util 1.3.9
Architecture: 32-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-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=128
-D HTTPD_ROOT="/etc/httpd"
-D SUEXEC_BIN="/usr/sbin/suexec"
-D DEFAULT_PIDLOG="logs/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="logs/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
Baris kunci dalam output itu adalah HTTPD_ROOT
. Itu menentukan di mana ROOT
direktori Apache akan dimulai, /etc/httpd
dalam kasus saya, ketika mencari konfigurasi. file dan modul.
CATATAN: Ini ROOT
bukan hal yang sama dengan DocumentRoot
. Ini ROOT
khusus untuk bagaimana httpd
daemon dikompilasi, DocumentRoot
untuk menentukan di mana httpd
daemon harus mulai mencari konten web yang sebenarnya (file .html dan semacamnya).
Untuk httpd.conf
file saya, saya memiliki baris Muat berikut:
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
Dengan ini, jalur lengkap ke modul Anda akan, misalnya:
/etc/httpd/modules/mod_auth_basic.so
Ini dari sistem CentOS 5.x tetapi tekniknya masih tepat.
BTW, ini bisa sedikit membingungkan karena dalam kasus CentOS file-file tersebut diatur secara fisik di sini:
% ls /usr/lib/httpd/modules/
libphp5.so mod_authnz_ldap.so mod_dav_fs.so mod_headers.so mod_perl.so mod_speling.so
... lalu dapat diakses ke daemon Apache httpd
,, melalui jalur ini:
% ls -l /etc/httpd/
total 12
drwxr-xr-x 2 root root 4096 Apr 26 2011 conf
drwxr-xr-x 3 root root 4096 Apr 26 2011 conf.d
-rw-r--r-- 1 root root 18 Feb 24 2009 htpasswd
lrwxrwxrwx 1 root root 19 Apr 26 2011 logs -> ../../var/log/httpd
lrwxrwxrwx 1 root root 27 Apr 26 2011 modules -> ../../usr/lib/httpd/modules
lrwxrwxrwx 1 root root 13 Apr 26 2011 run -> ../../var/run
The modules
Link menghubungkan /etc/httpd
-> /usr/lib/httpd/modules
.