คุณสามารถพิจารณาโมดูล Apache ที่ใช้ไปและสามารถลบออกได้หรือไม่?


18

ฉันก็เหมือนกับหลาย ๆ คนที่มีการติดตั้ง Apache ที่ค่อนข้างล้าสมัยพร้อมกับบรรทัด "LoadModule" เริ่มต้นจำนวนมาก

ตั้งแต่ต้นฉันได้ติดตั้งซอฟต์แวร์จำนวนมากและบอกตามตรงฉันไม่รู้ว่าซอฟต์แวร์ใดกำลังใช้โมดูลใด

ฉันต้องการลดขนาดหน่วยความจำของอินสแตนซ์ Apache ของฉันและทำเช่นนั้นฉันต้องการลบโมดูลออกจากการใช้งาน วิธีเดียวที่ฉันรู้ว่าจะตรวจสอบว่ามีการใช้งานโมดูลคือการลบออกจากการกำหนดค่าและดูว่ามีอะไรแบ่ง นี่เป็นวิธีที่แย่กว่าที่ฉันมีเวลาอธิบาย

ฉันอยากรู้ว่าใครรู้วิธีที่จะให้ Apache รายงานว่ามีการใช้โมดูลใดหรือไม่หรือมีวิธีอื่นในการพิจารณาโดยทางโปรแกรมว่าโมดูลนั้นปลอดภัยที่จะยกเลิกการกำหนดค่าหรือไม่

คำตอบ:


7

วิธีที่ฉันทำคือการสร้างเซิร์ฟเวอร์ทดสอบอ่านเอกสารและเริ่มจากหน้าว่าง

โมดูลต่อไปนี้เป็นภาคบังคับ:

  • แกน
  • mod_authz_host
  • mod_auth_basic
  • mod_authn_file
  • mod_dir
  • mod_log_config
  • mod_mime

จากนั้นฉันก็คอมเม้นท์โมดูลที่เหลือทั้งหมดแล้วเริ่ม Apache ใหม่ มันจะฟังดูถ้ามีบางอย่างเกิดขึ้นเช่น:

Starting httpd: Syntax error on line 10 of /etc/httpd/conf.d/squid.conf:
Invalid command 'order', perhaps misspelled or defined by a module not included in the server configuration

ทำเช่นเดียวกันกับโมดูลอื่น โดยใช้วิธีนี้นี่คือบางโมดูลที่ไม่จำเป็นต้องใช้:

  • mod_authn_alias
  • mod_authn_anon
  • mod_authn_dbm
  • mod_authn_default

  • mod_authz_user
  • mod_authz_owner
  • mod_authz_groupfile
  • mod_authz_dbm
  • mod_authz_default

  • mod_include
  • mod_logio
  • mod_ext_filter
  • mod_usertrack
  • mod_dav
  • mod_info
  • mod_dav_fs
  • mod_speling
  • mod_suexec
  • mod_cgi

หากคุณไม่ได้ใช้ LDAP สำหรับการตรวจสอบสิทธิ์สิ่งนี้สามารถปิดใช้งานได้:

  • mod_ldap
  • mod_authnz_ldap

โมดูลด้านล่างควรได้รับการพิจารณาเมื่อเปิดใช้งาน:

  • mod_proxy
  • mod_proxy_balancer
  • mod_proxy_ftp
  • mod_proxy_http
  • mod_proxy_connect

  • mod_cache
  • mod_disk_cache
  • mod_file_cache
  • mod_mem_cache

3
นั่นตอบคำถามที่ถามมาอย่างไร
John Gardeniers

คุณหมายถึงอะไร
quanta

4
แม้ว่าฉันจะชอบคำตอบของคุณ OP กำลังมองหาเครื่องมืออาร์กิวเมนต์บรรทัดคำสั่งหรือตัวจัดการที่จะบอกคุณว่าโมดูลใดปลอดภัยที่จะลบออกสันนิษฐานว่าเมื่อทำงานกับหรือขณะตรวจสอบไฟล์กำหนดค่าของเซิร์ฟเวอร์สด
mahnsc

4

โพสต์ก่อนหน้านี้แนะนำให้ปิดการใช้งานโมดูลจนบางสิ่งบางอย่างแตก ในขณะที่มันเป็นบ้าอย่างแน่นอนในระบบการผลิตบุคคลนั้นอยู่ในเส้นทางที่ถูกต้องเนื่องจากคุณจะต้องทำการทดสอบการถดถอย

ดังนั้นในกรณีนี้:

  1. สร้างเซิร์ฟเวอร์ทดสอบที่เหมือนกับเซิร์ฟเวอร์ที่คุณใช้งานอยู่และลงไปที่การกำหนดค่าไซต์
  2. ปิดการใช้งานโมดูล
  3. ทำการทดสอบการถดถอยบนไซต์
  4. ทำซ้ำขั้นตอนที่ 2 และ 3 จนกระทั่งมีบางอย่างผิดปกติหรือคุณเสร็จสิ้นกับโมดูลทั้งหมด
  5. เปิดใช้งานโมดูลอีกครั้ง
  6. ทำซ้ำขั้นตอนที่ 2 และ 3
  7. ด้วย apache ที่เพิ่งอัพเดตให้ทำการตั้งค่าแฟลชบนการกำหนดค่าและรีสตาร์ทเซอร์วิส apache
  8. ถ้ามันล้มเหลวให้แปลงอ่างเก็บการตั้งค่าดึงบันทึกวิเคราะห์และเริ่มจากขั้นตอนที่ 2 (หรือขั้นตอนที่ 1 หากจำเป็น)

นั่นอาจเป็นวิธีที่ง่ายที่สุดในการปรับปรุงการกำหนดค่า Apache ให้ง่ายขึ้น มิฉะนั้นคุณจะต้องดูแต่ละโมดูลกำหนดหน้าที่การใช้งานและค้นหาในเว็บไซต์เพื่อดูว่ามีโมดูลใดที่ใช้ฟังก์ชันการทำงานนั้น ซึ่งจะใช้เวลานานกว่านั้นมาก

หรือนี่อาจเป็นโอกาสที่ดีที่คุณจะเปลี่ยนไปใช้สิ่งที่มี น้ำหนักเบากว่า :


0

ฉันไม่มีคำตอบสำหรับคำถามของคุณโดยตรง แต่มีแพ็คเกจ AMP ขนาดเล็กจำนวนมากบนอินเทอร์เน็ตซึ่งเท่าที่ฉันรู้ไม่รวมโมดูลที่ติดตั้งไว้ล่วงหน้าส่วนใหญ่ ดังนั้นฉันจะเริ่มต้นด้วยการดูพวกเขาเป็นตัวอย่างการอ้างอิง

ลิงก์ 2 รายการนี้อาจช่วยให้คุณเริ่มต้นได้:

  1. http://en.wikipedia.org/wiki/List_of_Apache%E2%80%93MySQL%E2%80%93PHP_packages
  2. http://en.wikipedia.org/wiki/Comparison_of_WAMPs

0

ฉันรู้ว่าคุณกำลังถามเกี่ยวกับ Apache แต่เนื่องจากข้อ จำกัด ของหน่วยความจำในระบบของคุณคุณอาจได้รับการบริการที่ดีขึ้นโดยการเปลี่ยน Apache สำหรับ Nginx, Lighthttpd หรือเว็บเซิร์ฟเวอร์อื่น ๆ Apache เหมาะสำหรับการสนับสนุนโมดูล แต่หิวมากหน่วยความจำเมื่อเทียบกับเว็บเซิร์ฟเวอร์รุ่นใหม่เช่น Nginx, Lighthttpd, Cherokee, G-WAN เป็นต้น

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