เนื้อหา
ความแตกต่างหลัก
Apache และ Nginx ทั้งสองเป็นเว็บเซิร์ฟเวอร์โอเพนซอร์สเช่นเซิร์ฟเวอร์ HTTP และสามารถใช้สำหรับไฟล์แบบคงที่หรือหน้าแบบไดนามิก จำเป็นต้องมีการกำหนดค่าเพื่อจดจำ URL ที่ผู้ใช้ร้องขอเพื่อกำหนดเส้นทางได้อย่างถูกต้อง ความแตกต่างที่สำคัญระหว่าง Apache กับ Nginx คือการรับมือกับทราฟฟิกและการเชื่อมต่อ ใน Apache multi-processing modules (MPMs) มีไว้เพื่อจัดการกับคำขอของลูกค้าในขณะที่อยู่ใน Nginx การเชื่อมต่อและไคลเอนต์จะได้รับการจัดการโดยการวางไว้ในลูปเหตุการณ์ การใช้งาน CPU และหน่วยความจำนั้นมีความสอดคล้องกันใน Nginx แม้เมื่อใช้งานหนักเมื่อเทียบกับ Apache
Apache คืออะไร
Apache ได้รับการออกแบบเป็นเว็บเซิร์ฟเวอร์ Apache ใช้วิธีการสร้างไฟล์แบบ Conventional สำหรับการจัดการเนื้อหาแบบคงที่และเนื้อหาแบบไดนามิกเช่นกันโดยฝังตัวประมวลผลภาษา Apache ให้การกำหนดค่าเพิ่มเติมบนพื้นฐานต่อไดเรกทอรีผ่านการประเมินและตีความคำสั่งในไฟล์ที่ซ่อนที่รู้จักในชื่อ. htaccess ใน Apache โมดูลจะโหลดและยกเลิกการโหลดแบบไดนามิก
Nginx คืออะไร
Nginx ได้รับการออกแบบให้เป็นเว็บเซิร์ฟเวอร์เช่นเดียวกับพร็อกซีเซิร์ฟเวอร์ Nginx ขาดความสามารถในการประมวลผลเนื้อหาแบบไดนามิก ในขณะที่ Nginx ไม่อนุญาตให้มีการกำหนดค่าเพิ่มเติมบนพื้นฐานต่อไดเรกทอรีผ่านการประเมินและการตีความคำสั่ง คำขอจะให้บริการเร็วขึ้นโดย Nginx
ความแตกต่างที่สำคัญ
- การใช้งาน CPU และหน่วยความจำนั้นมีความสอดคล้องกันใน Nginx แม้เมื่อใช้งานหนักเมื่อเทียบกับ Apache
- Apache ใช้วิธีการพื้นฐานของไฟล์เพื่อจัดการกับเนื้อหาแบบคงที่และเนื้อหาแบบไดนามิกเช่นกันโดยการฝังตัวประมวลผลภาษาในขณะที่ Nginx ขาดความสามารถในการประมวลผลเนื้อหาแบบไดนามิกโดยกำเนิด
- Apache ให้การกำหนดค่าเพิ่มเติมบนพื้นฐานต่อไดเรกทอรีผ่านการประเมินและตีความคำสั่งในไฟล์ที่ซ่อนที่รู้จักในชื่อ. htaccess ในขณะที่ Nginx ไม่อนุญาตให้มีการกำหนดค่าเพิ่มเติมบนพื้นฐานต่อไดเรกทอรีผ่านการประเมินและการตีความคำสั่ง
- Apache ตีความ. htaccess ในขณะที่ Nginx ไม่ตีความ. htaccess
- คำขอจะให้บริการเร็วขึ้นโดย Nginx เมื่อเปรียบเทียบกับ Apache
- ระดับความปลอดภัยสูงใน Nginx เมื่อเปรียบเทียบกับ Apache เนื่องจาก Nginx ไม่อนุญาตให้กระจายการเข้าถึงการกำหนดค่าระดับไดเรกทอรีไปยังผู้ใช้แต่ละคน
- Apache ได้รับการออกแบบเป็นเว็บเซิร์ฟเวอร์ในขณะที่ Nginx ได้รับการออกแบบเป็นเว็บเซิร์ฟเวอร์เช่นเดียวกับพร็อกซีเซิร์ฟเวอร์
- ใน Apache โมดูลจะถูกโหลดและยกเลิกการโหลดแบบไดนามิก แต่ใน Nginx โมดูลจะไม่โหลดแบบไดนามิก
- ใน Nignx โมดูลจะถูกนำมาใช้ผ่านการคัดเลือกแล้วรวบรวมในซอฟต์แวร์หลักในขณะที่ Apache จะทำแบบไดนามิก