อัพเกรด Ubuntu 14.04 ยากจน Apache2


12

ฉันเพิ่งอัพเกรดเป็น Ubuntu 14.04 และตอนนี้ apache2 จะไม่เริ่มทำงานฉันได้รับข้อผิดพลาด:

root@dennisHome:~# /etc/init.d/apache2 restart
* Restarting web server apache2
...fail!
* The apache2 configtest failed.

เอาต์พุตของการทดสอบ config คือ:

apache2: Syntax error on line 244 of /etc/apache2/apache2.conf: 
Syntax error on line 1 of /etc/apache2/mods-enabled/authz_default.load: Cannot load       /usr/lib/apache2/modules/mod_authz_default.so into server: 
/usr/lib/apache2/modules/mod_authz_default.so: cannot open shared object file: No such file or directory
Action 'configtest' failed.
The Apache error log may have more information

ดูเหมือน mod_authz_default.so ไม่อยู่ที่นั่นอีกต่อไปฉันต้องทำอย่างไรเพื่อแก้ไขปัญหานี้


ฉันจะบันทึกการตั้งค่า Apache ของคุณและติดตั้ง Apache อีกครั้ง
Ramhound

คำตอบ:


14

ในการเลื่อนขึ้นไปเป็น Ubuntu 14.04 คุณจะผ่านไปยัง Apache 2.4 (จากสมมุติ 2.2) นี้ไม่ได้มีการเปลี่ยนแปลงเล็ก ๆ น้อย ๆ ที่คุณสามารถหาที่นี่รายชื่อของการปรับเปลี่ยนนี้ต้องใช้ คุณจะเห็นว่ามีงานต้องทำ โดยเฉพาะอย่างยิ่งสถานะหน้าเว็บ (เหนือสิ่งอื่นใด):

โมดูลเหล่านี้ถูกลบแล้ว: mod_authn_default, mod_authz_default, mod_mem_cache

นั่นเป็นสาเหตุที่คุณได้รับข้อความแสดงข้อผิดพลาดด้านบน คุณอาจลองแสดงความคิดเห็นเกี่ยวกับบรรทัดที่ละเมิด, 244 ของ apache.conf และดูว่าระบบของคุณสามารถทำได้ด้วยวิธีนี้ (แต่ฉันสงสัยว่ามัน)


1

หากคุณมีโมดูลที่โหลดโดยอัตโนมัติจากไดเรกทอรีที่เปิดใช้งาน mods แล้วบรรทัดที่ละเมิดมีแนวโน้มในส่วนนี้ของไฟล์ conf ของคุณ:

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

ในกรณีนี้คุณจะต้องไปที่ไดเรกทอรีที่เปิดใช้งาน mods ของคุณ ( /etc/apache2/mods-enabledโดยค่าเริ่มต้น) และลบ symlink สำหรับauthz_default.loadไฟล์

นี่เป็นเพราะ symlink ในการเปิดใช้งาน mods จะชี้ไปที่ไฟล์ใน mods-available ที่ไม่มีอยู่ใน Apache 2.4

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.