วิธีติดตั้งและกำหนดค่า Apache Web Server บน Ubuntu / Debian



ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา

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



2559-11-24_223222



ในขณะที่ Debian และ Ubuntu สร้างแพ็คเกจ Apache ในลักษณะเดียวกันสิ่งนี้แตกต่างจากโครงสร้างเซิร์ฟเวอร์อื่น ๆ openSUSE และลีนุกซ์เชิงพาณิชย์ส่วนใหญ่มีวิธีการสร้างของตัวเอง หากคุณคุ้นเคยกับรูปแบบการจัดการแพ็คเกจ DEB คุณอาจคุ้นเคยกับเทคนิคบางอย่างที่ใช้ในการติดตั้งสถาปัตยกรรมเซิร์ฟเวอร์ยอดนิยมนี้แล้ว



การติดตั้งและกำหนดค่าแพ็คเกจ Apache

เทคโนโลยีเซิร์ฟเวอร์ Ubuntu และ Debian มักมาพร้อมกับสภาพแวดล้อมเดสก์ท็อปที่ไม่โหลดเลย คุณมีแนวโน้มที่จะทำงานกับอินเทอร์เฟซ Bash CLI แท้ ๆ มากกว่าแม้ว่าคุณจะสามารถติดตั้งตัวแปลคำสั่งอื่นได้หากต้องการ สำหรับการสนทนานี้เราจะถือว่าคุณกำลังทำงานจากคอนโซลเสมือนภายใต้บัญชีผู้ใช้ คุณสามารถสลับระหว่างคอนโซลเสมือนได้โดยกด CTRL ค้างไว้แล้วกด F1-F6 คีย์ CTRL + F7 สงวนไว้สำหรับเซิร์ฟเวอร์ XFree86 ซึ่งคุณอาจไม่มีในการกำหนดค่านี้

เริ่มต้นด้วยการเข้าสู่บัญชีของคุณ เมื่อคุณไปถึง $ prompt คุณสามารถเริ่มติดตั้ง Apache Web Server ได้ ออกคำสั่งต่อไปนี้ตามด้วย push return:

อัปเดต sudo apt-get



2559-11-24_222915

sudo apt-get ติดตั้ง apache2.0

2559-11-24_222945

ขึ้นอยู่กับการติดตั้งของคุณคุณอาจได้รับผลผลิตจำนวนมากหรือไม่มากเลย หากคุณได้รับคำเตือนเกี่ยวกับแพ็คเกจที่ติดตั้งไว้แล้วให้ลองออก man apache2 หากคุณได้รับหน้าคนที่เหมาะสมแสดงว่ามีการติดตั้งแล้ว หากอ่านว่า“ No man entry for apache2” คุณจะต้องลองติดตั้งอีกครั้ง

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

คุณจะได้รับหน้าพื้นฐานที่อ่านชื่อโดเมนของคุณหรือที่อยู่ IP ของเซิร์ฟเวอร์ของคุณหากทำงานได้อย่างถูกต้อง ซึ่งหมายความว่าคุณมีเซิร์ฟเวอร์ที่ทำงานอยู่ แต่คุณยังไม่ได้เพิ่มอะไรลงในเพจของคุณ ตอนนี้คุณสามารถเริ่มการกำหนดค่าได้หากต้องการ ใช้คำสั่ง cd เพื่อไปที่ไดเร็กทอรี Apache โดยพิมพ์ 2559-11-24_223145จากนั้นพิมพ์ ls เพื่อรับรายชื่อไดเร็กทอรี หากเซิร์ฟเวอร์ของคุณไม่ให้เอาต์พุตสีให้ใช้ dir –color หรือ ls –color เพื่อดูว่ารายการใดเป็นไฟล์ข้อความธรรมดาและไดเร็กทอรีใด สิ่งที่อยู่ในรายชื่อจะขึ้นอยู่กับเวอร์ชันของแพ็คเกจ Apache ที่ติดตั้ง หลายตำแหน่งในโครงสร้างไฟล์มีความสำคัญเป็นพิเศษ:

- ports.conf: โฮสต์เสมือนฟังพอร์ตที่ลงทะเบียนภายในไฟล์นี้ ตรวจสอบให้แน่ใจว่าข้อมูลเป็นปัจจุบันเพื่อรองรับระบบ SSL ของคุณ หากคุณใช้ SSL คุณจะต้องลองใช้ sudo nano conf.d เพื่อตรวจสอบการกำหนดค่า SSl และค่าเริ่มต้นความปลอดภัย

- apache2.conf: ตัวเลือกการกำหนดค่าส่วนใหญ่ได้รับการตั้งค่าในไฟล์นี้และไบนารี apache2 จะตรวจสอบไฟล์นี้ก่อนเสมอเพื่อดูว่ามีการตั้งค่าตัวเลือกเฉพาะหรือไม่ พิมพ์ sudo nano apache2.conf เมื่อคุณอยู่ในไฟล์ ไดเร็กทอรีเพื่อแก้ไขไฟล์นี้ คุณสังเกตเห็นว่าไฟล์นี้มีสามส่วนแยกกัน ขั้นแรกช่วยให้คุณสามารถเปลี่ยนกระบวนการเซิร์ฟเวอร์ Apache ในระดับโลกได้ การตั้งค่าเซิร์ฟเวอร์เริ่มต้นทั้งหมดจะอยู่ในส่วนที่สองและโฮสต์เสมือนถูกกำหนดไว้ในส่วนที่สาม การแจกแจงที่ใช้ Debian รวมถึง Ubuntu ต้องการการกำหนดค่าส่วนใหญ่ที่ด้านล่างโดยใช้คำสั่ง include มีการตั้งค่ารวมหลายอย่างที่ด้านล่างของไฟล์

- ไซต์พร้อมใช้งานและไซต์ที่เปิดใช้งาน: ทั้งสองไดเร็กทอรีย่อยภายในไฟล์ ไดเรกทอรี ขั้นแรกกำหนดว่าจะแสดงเนื้อหาใดโดยไม่คำนึงถึงการกำหนดค่าที่ใช้งานอยู่ ประการที่สองกำหนดนิยามโฮสต์เสมือนและส่วนใหญ่จะมีลิงก์ไปยังไฟล์ที่เก็บไว้ในไฟล์แรก

คุณอาจได้รับข้อผิดพลาดระหว่างการกำหนดค่าที่อ่าน:

ขณะนี้ยังไม่ได้ติดตั้งโปรแกรม 'nano คุณสามารถติดตั้งได้โดยพิมพ์:

sudo apt ติดตั้ง e3

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

เมื่อคุณตรวจสอบการรวมและบรรทัดการกำหนดค่าอื่น ๆ คุณอาจพบรายการหลักบางส่วนที่คุณต้องการเปลี่ยนแปลง Apache ตั้งค่าพารามิเตอร์การหมดเวลาเป็น 300 ซึ่งหมายความว่าเซิร์ฟเวอร์ของคุณมีเวลา 300 วินาทีในการตอบสนองแต่ละคำขอ คนส่วนใหญ่ชอบสิ่งนี้ไม่เกินหนึ่งนาที โดยทั่วไป KeepAlive จะมีค่าเริ่มต้นเป็นปิดซึ่งบังคับให้แต่ละคำขอโหลดการเชื่อมต่อใหม่ การเปิดเป็นเปิดจะช่วยให้การเชื่อมต่อยังคงเปิดอยู่เพื่อให้ลูกค้าสามารถส่งคำขอหลายรายการได้ หากคุณปรับสิ่งนี้ให้ตั้งค่าตัวเลขที่กำหนดเองในส่วน MaxKeepAliveRequests บรรทัดนี้จะบอก Apache ว่ามีคำขอให้จัดการการเชื่อมต่อกี่รายการก่อนที่จะตาย การตั้งค่าเป็น 0 จะบังคับให้ Apache แสดงคำขอไม่ จำกัด สำหรับการเชื่อมต่อแต่ละครั้ง คุณยังสามารถฆ่าการเชื่อมต่อได้โดยการตั้งค่าจำนวนเกณฑ์การหมดเวลาเป็นวินาทีในบรรทัด KeepAliveTimeout

หากคุณต้องการตรวจสอบว่าโมดูลใดที่รวบรวมไว้ในแพ็คเกจ Apache ของคุณให้กลับไปที่พรอมต์ CLI และออกคำสั่งนี้:

apache2 -l

คุณอาจเห็น prefork.c, http_core.c, mod_so.c และตัวเลือกอื่น ๆ อีกมากมาย ต้องมีโค้ด http_core.c มากกว่าที่จะรวมไว้เพื่อให้แพ็คเกจ Apache ของคุณทำงานได้อย่างถูกต้อง แพ็คเกจ Debian และ Ubuntu ที่ติดตั้งผ่านระบบ apt มักจะมีการรวบรวมโมดูลที่จำเป็นทั้งหมดตั้งแต่ตอนที่สร้างขึ้น

อ่าน 4 นาที