আমি মনে করি এই সমস্ত উত্তর সত্যিই প্রশ্নের উত্তর দিচ্ছে না। কমান্ডটি চালিয়ে রুট স্তর নির্ধারণ করা যেতে পারে httpd -V
। এটি আপনাকে দেখায় যে সংকলনের সময় অ্যাপাচি ডেমনটি কী অপশন দ্বারা নির্মিত হয়েছিল। এটি httpd
কনফিগার করে কোথায় কোথায় তা নির্ধারণ করে তা নিয়ন্ত্রণ করে । ডিফল্টরূপে ফাইল এবং .so মডিউল।
উদাহরণ স্বরূপ:
% 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"
যে আউটপুট মূল লাইন হয় HTTPD_ROOT
। এটি কনফিগার করার সময় আমার ক্ষেত্রে, অ্যাপাচি ROOT
ডিরেক্টরিটি কোথায় শুরু করতে হবে তা নির্ধারণ করে /etc/httpd
। ফাইল এবং মডিউল।
দ্রষ্টব্য: এটি ROOT
একই জিনিস নয় DocumentRoot
। এটি ডেমনটি ROOT
কীভাবে httpd
সংকলিত হয়েছিল, এটি DocumentRoot
নির্দিষ্ট করার জন্য httpd
ডেমনটি কোথায় প্রকৃত ওয়েব সামগ্রী (.html ফাইল এবং এর জন্য) সন্ধান করা উচিত তা নির্দিষ্ট করে ।
আমার httpd.conf
ফাইলের জন্য আমার কাছে নিম্নোক্ত লোড লাইন রয়েছে:
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
এটি দেওয়া আপনার মডিউলগুলির পুরো পথটি হবে উদাহরণস্বরূপ:
/etc/httpd/modules/mod_auth_basic.so
এটি CentOS 5.x সিস্টেম থেকে এসেছে তবে কৌশলটি এখনও উপযুক্ত।
বিটিডাব্লু, এটি কিছুটা বিভ্রান্তি পেতে পারে কারণ সেন্টোসের ক্ষেত্রে ফাইলগুলি এখানে শারীরিকভাবে সংগঠিত হয়:
% ls /usr/lib/httpd/modules/
libphp5.so mod_authnz_ldap.so mod_dav_fs.so mod_headers.so mod_perl.so mod_speling.so
... এবং তারপরে অ্যাপাচি ডেমনটিতে অ্যাক্সেসযোগ্য httpd
, এই পথ দিয়ে:
% 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
modules
লিংক সংযোগ স্থাপন করে /etc/httpd
-> /usr/lib/httpd/modules
।