Tôi nghĩ rằng tất cả những câu trả lời này không thực sự trả lời câu hỏi. Mức gốc có thể được xác định bằng cách chạy lệnh httpd -V
. Điều này sẽ cho bạn thấy các tùy chọn mà daemon Apache được xây dựng cùng lúc biên dịch. Đây là những gì kiểm soát nơi httpd
xác định nơi để tìm cấu hình của nó. tập tin và mô-đun .so theo mặc định.
Ví dụ:
% 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"
Dòng quan trọng trong đầu ra đó là HTTPD_ROOT
. Điều đó xác định nơi ROOT
thư mục của Apache sẽ bắt đầu, /etc/httpd
trong trường hợp của tôi, khi tìm cấu hình. tập tin và mô-đun.
LƯU Ý: Đây ROOT
không phải là điều tương tự như DocumentRoot
. Điều này ROOT
đặc trưng cho cách httpd
trình nền được biên dịch, DocumentRoot
là để chỉ định nơi httpd
trình nền sẽ bắt đầu tìm kiếm nội dung web thực tế (tệp .html, v.v.).
Đối với httpd.conf
tệp của tôi, tôi có các dòng Tải sau:
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
Ví dụ, đường dẫn đầy đủ đến các mô-đun của bạn sẽ là:
/etc/httpd/modules/mod_auth_basic.so
Đây là từ hệ thống CentOS 5.x nhưng kỹ thuật vẫn thích hợp.
BTW, nó có thể gây ra một chút khó hiểu vì trong trường hợp của CentOS, các tệp được sắp xếp vật lý ở đây:
% ls /usr/lib/httpd/modules/
libphp5.so mod_authnz_ldap.so mod_dav_fs.so mod_headers.so mod_perl.so mod_speling.so
... và sau đó có thể truy cập vào daemon Apache httpd
, thông qua đường dẫn này:
% 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
Các modules
connect liên kết /etc/httpd
-> /usr/lib/httpd/modules
.