ฉันรู้สึกงุนงงกับการกำหนดค่า apache2 ที่ค่อนข้างง่ายนี้ จากไฟล์คอนฟิกูเรชันสองไฟล์ต่อไปนี้ ฉันคาดว่า DocumentRoot จะเป็น /www/htdocs แต่เป็นค่าเริ่มต้นของ apache ที่ /var/www/html ไฟล์เหล่านี้คือไฟล์คอนฟิกูเรชันที่มีการลบบรรทัดความคิดเห็นทั้งหมด:
grep -v '^\s*#' /etc/apache2/apache2.conf|grep -v '^\s*$'
DefaultRuntimeDir ${APACHE_RUN_DIR}
ไฟล์พิด ${APACHE_PID_FILE}
หมดเวลา 300
เปิด KeepAlive
MaxKeepAliveRequests 100
KeepAliveTimeout 5
ผู้ใช้ ${APACHE_RUN_USER}
กลุ่ม ${APACHE_RUN_GROUP}
ชื่อโฮสต์ปิดการค้นหา
บันทึกข้อผิดพลาด ${APACHE_LOG_DIR}/error.log
LogLevel เตือน
รวมตัวเลือก mods-enabled/*.load
รวมตัวเลือก mods-enabled/*.conf
รวม ports.conf
<ไดเร็กทอรี />
ตัวเลือก FollowSymLinks
AllowOverride ไม่มี
ต้องการปฏิเสธทั้งหมด
</ไดเร็กทอรี>
<ไดเร็กทอรี /usr/share>
AllowOverride ไม่มี
ต้องได้รับอนุญาตทั้งหมด
</ไดเร็กทอรี>
<ไดเรกทอรี /www/>
ดัชนีตัวเลือก FollowSymLinks
AllowOverride ไม่มี
ต้องได้รับอนุญาตทั้งหมด
</ไดเร็กทอรี>
AccessFileName .htaccess
<FilesMatch "^\.ht">
ต้องการปฏิเสธทั้งหมด
</FilesMatch>
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" รวมกัน
LogFormat "%h %l %u %t \"%r\" %>s %O" ทั่วไป
LogFormat "%{Referer}i -> %U" ผู้อ้างอิง
ตัวแทน LogFormat "%{User-agent}i"
รวมทางเลือก conf-enabled/*.conf
รวมตัวเลือกไซต์ที่เปิดใช้งาน/*.conf
grep -v '^\s*#' /etc/apache2/sites-enabled/000-default.conf|grep -v '^\s*$'
<VirtualHost *:80>
ServerName hpmicro1.lovelady.com
ServerAdmin webmaster@localhost
DocumentRoot /www/htdocs
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
ที่นี่ ฉันจะหยุดบริการ apache ทำการล้างข้อมูลและเริ่มต้นใหม่ (หวังว่าการล้างข้อมูลเพื่อหลีกเลี่ยงความสับสนสำหรับผู้ที่ไม่สามารถ ดู เสร็จแล้ว)
> sudo บริการ apache2 หยุด
> วันที่ '+%Y-%m-%d-%H:%M:%S'
2021-07-19-09:47:52
> > /var/log/apache2/error.log
> บริการ apache2 เริ่มต้น
> ls -l /var/log/apache2/error.log
-rw-r----- 1 root adm 245 ก.ค. 62 09:47 /var/log/apache2/error.log
> ps -ef|grep apache2|grep www
www-ข้อมูล 111420 111414 0 09:47 ? 00:00:00 /usr/sbin/apache2 -k เริ่มต้น
www-ข้อมูล 111421 111414 0 09:47 ? 00:00:00 /usr/sbin/apache2 -k เริ่มต้น
www-ข้อมูล 111422 111414 0 09:47 ? 00:00:00 /usr/sbin/apache2 -k เริ่มต้น
www-ข้อมูล 111423 111414 0 09:47 ? 00:00:00 /usr/sbin/apache2 -k เริ่มต้น
www-ข้อมูล 111424 111414 0 09:47 ? 00:00:00 /usr/sbin/apache2 -k เริ่มต้น
> แมว /var/log/apache2/error.log
[จันทร์ 19 ก.ค. 09:47:53.833123 2021] [mpm_prefork:notice] [pid 111414] AH00163: Apache/2.4.41 (Ubuntu) กำหนดค่า -- กลับมาดำเนินการตามปกติ
[จันทร์ที่ 19 กรกฎาคม 09:47:53.834328 2021] [core:notice] [pid 111414] AH00094: Command line: '/usr/sbin/apache2'
เมื่อทำทั้งหมดนี้แล้ว นี่คือสิ่งที่ apache2 รายงานว่าเป็นการกำหนดค่าปัจจุบัน อย่างที่ฉันพูด DocumentRoot ไม่ใช่สิ่งที่ฉันคาดหวัง ฉันอาจพลาดอะไรไป คำสั่ง apache2ctl -S ระบุไฟล์ที่มีชื่อ /www/htdocs DocumentRoot อืม....
> apache2ctl -S
การกำหนดค่า VirtualHost:
*:80 hpmicro1.lovelady.com (/etc/apache2/sites-enabled/000-default.conf:1)
รูทเซิร์ฟเวอร์: "/etc/apache2"
รูทเอกสารหลัก: "/var/www/html"
ErrorLog หลัก: "/var/log/apache2/error.log"
Mutex watchdog-callback: using_defaults
ค่าเริ่มต้นของ Mutex: dir="/var/run/apache2/" กลไก=ค่าเริ่มต้น
Mutex mpm-accept: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
กำหนด: DUMP_VHOSTS
กำหนด: DUMP_RUN_CFG
ผู้ใช้: name="www-data" id=33
กลุ่ม: name="www-data" id=33
ในกรณีที่มีคำถามเกี่ยวกับการอนุญาต นี่คือข้อมูลความเป็นเจ้าของที่เกี่ยวข้องกับ /www/htdocs...
> ls -ld /www/htdocs
drwxrwxr-x 5 www-data www-data 4096 18 ก.ค. 22:58 /www/htdocs
รวม 72
> ls -l /www/htdocs
-rw-rw-rw- 1 www-data www-data 35752 17 ก.ค. 14:09 น. dbg-wizard.php
drwxrwxr-x 2 www-data www-data 4096 ก.ค. 59 08:15 ฟังก์ชั่น
drwxrwxr-x 2 www-data www-data 4096 17 กรกฎาคม 12:38 GetChats
-rw-r--r-- 1 www-data www-data 10918 ก.ค. 61 16:16 น. index.html
-rw-rw-rw- 1 www-data www-data 20 ก.ค. 60 14:18 น. index.php
drwxrwxrwx 2 www-data www-data 4096 29 มิ.ย. 13:32 บันทึก
-rw-rw-rw- 1 www-data www-data 67 ก.ค. 60 14:18 น. php-love-info.php
-rw-rw-rw- 1 www-data www-data 23 ก.ค. 60 14:18 น. show-php-info.php
ขอบคุณสำหรับความช่วยเหลือใด ๆ