ในการจัดการเว็บไซต์ของคุณบนเซิร์ฟเวอร์ภายในคุณต้องติดตั้งชุดของส่วนประกอบเพิ่มเติมที่จัดระเบียบระบบเดียวที่วางแผนพร้อมกันและไม่มีข้อผิดพลาดใด ๆ หนึ่งในองค์ประกอบหลักของโครงสร้างดังกล่าวสามารถพิจารณาว่าเป็นเว็บเซิร์ฟเวอร์ ผู้ใช้ส่วนใหญ่มักต้องการใช้ Apache เนื่องจากความเรียบง่ายและความยืดหยุ่นของการตั้งค่ารวมถึงความเป็นไปได้ในการเชื่อมต่อโมดูลภายนอก อย่างไรก็ตามการติดตั้งและการกำหนดค่าหลัก - กระบวนการไม่เร็วและยากสำหรับบางคนดังนั้นเราจึงต้องการบอกเกี่ยวกับรายละเอียดเพิ่มเติมโดยใช้การกระจาย CentOS 7
ติดตั้ง Apache ใน Centos 7
โครงสร้างของบทความในปัจจุบันจะถูกค่อย ๆ ดังนั้นแม้แต่ผู้ใช้มือใหม่ที่เข้าใจว่าการติดตั้งและการเตรียมเว็บเซิร์ฟเวอร์ภายใต้การพิจารณาจะดำเนินการอย่างไร ชี้แจงทันทีว่าเราไม่ได้ให้คู่มือสำหรับการปรับรายละเอียดของ Apache เนื่องจากขึ้นอยู่กับการตั้งค่าส่วนบุคคลของผู้ใช้และส่วนประกอบสำคัญอื่น ๆ ที่มีอยู่ สำหรับข้อมูลนี้เรามักจะแนะนำให้คุณหันไปใช้เอกสารอย่างเป็นทางการขั้นตอนที่ 1: การเตรียมการและการติดตั้ง
เริ่มเริ่มต้นทันทีจากการติดตั้งคอมโพเนนต์ที่รับผิดชอบความถูกต้องของ Apache และเพิ่มบริการย่อยทั้งหมด เราเสนอพื้นที่เก็บข้อมูลของการกระจายเพื่อใช้ที่เก็บการกระจายสำหรับสิ่งนี้เนื่องจากซอฟต์แวร์ที่มีเสถียรภาพล่าสุดของซอฟต์แวร์จะถูกจัดวางอยู่เสมอและกระบวนการติดตั้งเองก็ใช้เวลาไม่นาน
- เรียกใช้ "เทอร์มินัล" เช่นผ่านไอคอนในส่วน "รายการโปรด"
- หาก Apache ได้รับการติดตั้งบนคอมพิวเตอร์แล้วหรือคุณลบส่วนประกอบใดชิ้นหนึ่งโดยบังเอิญเพียงแค่ใช้คำสั่ง sudo yum update httpd โดยเปิดใช้งานโดยกดปุ่ม ENTER
- การกระทำนี้ดำเนินการในนามของ SuperUser ซึ่งหมายความว่าคุณต้องยืนยันโดยการระบุรหัสผ่านจากบัญชีนี้
- หากมีการติดตั้งการอัปเดตคุณจะได้รับการแจ้งเตือนนี้และหากแพ็กเก็ตหายไปข้อความอื่นของอักขระที่เหมาะสมจะปรากฏขึ้น
- ตอนนี้เรามาพูดคุยเกี่ยวกับการติดตั้ง Apache ตั้งแต่เริ่มต้น ดังที่เราได้กล่าวไปแล้วเราจะใช้ที่เก็บอย่างเป็นทางการที่จะใช้สำหรับสิ่งนี้ดังนั้นคุณต้องป้อนคำสั่ง sudo yum install httpd
- เมื่อแจ้งการติดตั้งแพคเกจให้ยืนยันโดยเลือกเวอร์ชัน Y
- คาดว่าจะเสร็จสิ้นการติดตั้งในขณะที่คุณไม่ปิดเซสชั่นเทอร์มินัลปัจจุบันเพื่อไม่ให้ขัดจังหวะกระบวนการ
- ในตอนท้ายจะแนะนำทันทีเพื่อเริ่มเว็บเซิร์ฟเวอร์ที่สามารถทำได้ผ่าน Sudo SystemCtl เริ่ม httpd
- ตรวจสอบสถานะปัจจุบันผ่านสถานะ Sudo SystemCtl httpd
- การแจ้งเตือน "ใช้งานอยู่: ใช้งาน (ทำงาน)" หมายความว่าตอนนี้ Apache ทำงานได้อย่างถูกต้องและคุณสามารถดำเนินการกำหนดค่าต่อไปได้
มันคือทั้งหมดที่คุณต้องรู้เกี่ยวกับขั้นตอนพื้นฐานสำหรับการติดตั้งเว็บเซิร์ฟเวอร์ อย่างที่คุณเห็นไม่มีอะไรซับซ้อนในนั้น ต่อไปเราต้องการพูดคุยเกี่ยวกับการมีปฏิสัมพันธ์กับบริการหลักและการติดตั้งการกำหนดค่าหลักและคุณยังคงตัดสินใจว่าจะคุ้มค่ากับการสำรวจคำแนะนำหรือความรู้เกี่ยวกับการกำหนดค่าและการจัดการที่มีอยู่แล้ว
ขั้นตอนที่ 2: การจัดการ Apache
เว็บเซิร์ฟเวอร์ใน Centos เช่นเดียวกับในการแจกแจงอื่น ๆ ฟังก์ชั่นในพื้นหลังในรูปแบบของบริการ ตามค่าเริ่มต้นจะถูกเพิ่มไปยัง Autoload และเราได้บอกกับการเปิดใช้งานและการตรวจสอบความถูกต้องของสถานะก่อนหน้านี้แล้ว หากคุณมีความปรารถนาที่จะจัดการเครื่องมือนี้มันจะดำเนินการเช่นนี้:
- ป้อน Sudo SystemCtl หยุด httpd เพื่อให้ Apache สมบูรณ์
- คำสั่งนี้และคำสั่งที่ตามมาทั้งหมดจะดำเนินการในนามของ SuperUser ดังนั้นคุณจะต้องยืนยันโดยป้อนรหัสผ่านที่เหมาะสม
- การรีสตาร์ทจะเกิดขึ้นผ่าน Sudo SystemCtl รีสตาร์ทคำสั่ง httpd ทีมนี้มีความเกี่ยวข้องในสถานการณ์ที่เซิร์ฟเวอร์ให้ความล้มเหลวหรือจำเป็นต้องรีสตาร์ทเนื่องจากคุณสมบัติของการโต้ตอบกับส่วนที่เหลือของส่วนประกอบ
- ใช้ Sudo SystemCTL โหลด HTTPD หากจำเป็นต้องมีการเปลี่ยนแปลงทั้งหมดหลังจากการตั้งค่าที่มีผลบังคับใช้ แต่ไม่มีการเชื่อมต่อที่ไม่เสียหาย
- Sudo SystemCtl ปิดใช้งานคำสั่ง httpd ลบ Apache จาก Autoload และ Sudo SystemCtl เปิดใช้งาน HTTPD ส่งคืนสถานะมาตรฐาน นอกจากนี้เมื่อคุณเปิดใช้งานตัวเลือกนี้คุณจะได้รับแจ้งจากการสร้างลิงค์สัญลักษณ์ใหม่ที่รับผิดชอบพารามิเตอร์นี้
อย่างที่คุณเห็นจัดการสถานะของการบริการทีมมาตรฐานมากที่สุด พวกเขาจะจำได้ง่ายหากคุณมักถูกบังคับให้หันไปใช้มาตรการดังกล่าวในระหว่างการบริหารเครือข่ายเว็บไซต์แยกต่างหากหรือแอปพลิเคชันใด ๆ
ขั้นตอนที่ 3: การกำหนดค่าพื้นฐาน
การกำหนดค่าพื้นฐานหมายถึงการกำหนดค่าโฮสต์เสมือนซึ่งมีประโยชน์สำหรับการตั้งค่าและตำแหน่งของโดเมนที่แตกต่างกันในเซิร์ฟเวอร์เดียว โฮสต์เสมือนมาตรฐานหนึ่งแห่งนั้นค่อนข้างเพียงพอหากคุณจัดการกับเว็บไซต์เดียวเท่านั้นเมื่อลงทะเบียนโดเมนอื่นคุณจะต้องใช้การสร้างพารามิเตอร์เพิ่มเติม ตอนนี้เราจะใช้โฮสต์เสมือนมาตรฐานมาตรฐานและคุณเปลี่ยนที่อยู่หากจำเป็น
- เริ่มจากการสร้างแคตตาล็อกที่ลูกสาวของโฮสต์เสมือนทั้งหมดจะถูกเก็บไว้ สิ่งนี้ทำผ่านคำสั่ง sudo mkdir -p /var/www/example.com/html
- จำเป็นต้องมีโฟลเดอร์เพิ่มเติมที่บันทึกเหตุการณ์จะถูกบันทึกโดยอัตโนมัติ หากต้องการเพิ่มเพื่อป้อน Sudo mkdir -p /var/www/example.com/log
- กำหนดสิทธิ์มาตรฐานให้กับไดเรกทอรีผ่าน Sudo Chown -r ผู้ใช้: $ ผู้ใช้ /var/www/example.com/html
- การติดตั้งและสิทธิ์เพิ่มเติมสำหรับผู้ใช้แต่ละคนที่ใส่ sudo chmod -r 755 / var / www
- เราจะดำเนินการต่อเพื่อสร้างตัวอย่างของหน้าหลักที่จะแสดงเมื่อตรวจสอบความสามารถในการทำงานของโฮสต์ สร้างไฟล์ข้อความใหม่ผ่านตัวแก้ไขที่สะดวกเช่นการใช้นาโนคุณควรป้อน sudo nano /var/www/example.com/html/index.html
- เมื่อคุณเปิดตัวแก้ไขข้อความการแจ้งเตือนจะได้รับการแจ้งเตือนว่านี่เป็นไฟล์ใหม่ ไม่ต้องกังวลเพราะควรจะเป็น เราสร้างมันขึ้นมาโดยเฉพาะเปิดเผยการกำหนดค่าที่เหมาะสม
- ใส่รหัสด้านล่างแทนที่คำทักทายมาตรฐานในข้อความโดยพลการ หากคุณต้องการคุณสามารถทำซ้ำโครงสร้างได้อย่างสมบูรณ์โดยการสร้างหน้าที่เหมาะสม
ยินดีต้อนรับสู่ example.com!
ความสำเร็จ! โฮสต์เสมือนของ Example.com กำลังทำงานอยู่!
- บันทึกการเปลี่ยนแปลงโดยคลิกที่ Ctrl + O แล้วออกจากโปรแกรมแก้ไขข้อความผ่าน CTRL + X
- สิ่งเหล่านี้เป็นเพียงการตั้งค่าเบื้องต้น ตอนนี้ไปที่โฮสต์เสมือนจริง: คุณต้องระบุโฟลเดอร์สำหรับที่เก็บข้อมูลเป็นครั้งแรก เมื่อต้องการทำเช่นนี้ให้ป้อน Sudo MKDIR / etc / httpd / sites ที่มี / etc / httpd / sites-enabled
- หลังจากนั้นระบุเว็บเซิร์ฟเวอร์ที่ตอนนี้เขาต้องการโต้ตอบกับส่วนประกอบอื่น ๆ งานนี้ดำเนินการผ่านการแก้ไขไฟล์การกำหนดค่าหลัก เรียกใช้ผ่านโปรแกรมแก้ไขข้อความโดยการระบุ sudo nano /etc/httpd/conf/httpd.conf
- เรียกใช้ที่ด้านล่างของรายการและใส่สตริงที่เปิดใช้งานไซต์ Sites-enabled / * SIKEOPTIONAL CONF
- ก่อนออกจากโปรแกรมแก้ไขข้อความอย่าลืมบันทึกการเปลี่ยนแปลงทั้งหมด
- ในการสร้างโฮสต์เสมือนคุณจะต้องมีไฟล์คอนฟิกูเรชันอื่น สร้างมันผ่าน sudo nano /etc/httpd/sites-available/example.com.conf
- แทรกเนื้อหาที่นี่เพิ่มเติมแทนที่แถวที่ต้องการเป็นของคุณ
servername www.example.com
serveralias example.com
DocumentRoot /var/www/example.com/html
errorlog /var/www/example.com/log/error.log
customlog /var/www/example.com/log/requests.log รวมกัน
- มันยังคงเป็นเพียงการเปิดใช้งานไฟล์โดยการสร้างลิงก์สัญลักษณ์ผ่าน sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-Enabled/example.com.conf
ขั้นตอนที่ 4: การตั้งค่าการควบคุมการเข้าถึง
หากมาถึงการตั้งค่าพารามิเตอร์ระดับโลกจึงจำเป็นต้องให้การควบคุมการเข้าถึงระบุจำนวนผู้ใช้ที่จะสามารถเปลี่ยนแปลงไดเรกทอรีที่ถือก่อนหน้านี้ได้ ขั้นตอนนี้ดำเนินการโดยใช้เครื่องมือ SELINUX มาตรฐานที่รับผิดชอบในการจัดการระดับการเข้าถึง
- ตั้งค่าพารามิเตอร์ความปลอดภัยทั่วโลกผ่าน Sudo SetSebool -p httpd_unified 1. มันจะให้กระบวนการทุกประเภทเป็นหนึ่งเดียว
- ต่อไปขอแนะนำให้ตรวจสอบพารามิเตอร์ SELINUX ปัจจุบันที่ให้ไว้โดยอัตโนมัติ ในการทำเช่นนี้เขียน sudo ls -dz /var/www/example.com/log/
- เป็นผลให้คุณจะเห็นเนื้อหาของ DRWXR-XR-X รูท unconfined_u: object_r: httpd_sys_content_t: s0 /var/www/example.com/log/ หมายความว่าตอนนี้ Apache สามารถอ่านไฟล์เหล่านั้นที่สร้างขึ้นในโฟลเดอร์ที่ติดตั้งตามลำดับจะต้องเปลี่ยนการกำหนดค่า
- งานนี้ดำเนินการผ่าน sudo semanage fcontext-at httpd_log_t "/var/www/example.com/log(/*)?"
- บันทึกการเปลี่ยนแปลงและทำเพื่อให้เปิดใช้งานหลังจากรีบูตเซิร์ฟเวอร์โดยป้อน Sudo RestoreCon -r -V /var/www/example.com/log
- ตอนนี้ตรวจสอบการเปลี่ยนแปลงใน sudo ls -dz /var/www/example.com/log/ อีกครั้ง
- อย่างที่คุณเห็นเป็นผลให้ข้อสรุปมีแบบฟอร์ม DRWXR-XR-X ราก unconfined_u: object_r: httpd_log_t: s0 /var/www/example.com/log ดังนั้นทุกอย่างทำอย่างถูกต้อง
- มันยังคงเป็นเพียงการทดสอบการเปลี่ยนแปลงทั้งหมด เมื่อต้องการทำเช่นนี้ให้ป้อน Sudo SystemCtl รีสตาร์ท HTTPD แล้วคลิกที่ Enter
- ยืนยันการกระทำโดยการระบุรหัสผ่าน Superuser
- สร้างคำขอสำหรับไดเรกทอรีโดยป้อน ls -lz /var/www/example.com/log หากเนื้อหาที่ปรากฏมี -rw-r - r-- 1 ข้อผิดพลาดรูทรูท log -rw-r - r-- 1 รูทรูท 0 ขอ .log หมายความว่าการตั้งค่าก่อนหน้านี้เสร็จสมบูรณ์อย่างถูกต้อง
คุณคุ้นเคยกับขั้นตอนการติดตั้งและการกำหนดค่าโดยรวมของ Apache Web Server ใน CentOS 7 อย่างที่คุณเห็นการติดตั้งเองจะใช้เวลาไม่มากนักและปัญหาทั้งหมดเชื่อมต่อกับการกำหนดค่าเท่านั้น หากคู่มือที่นำเสนอสำหรับการเปลี่ยนพารามิเตอร์และการจัดการ Apache คุณกลายเป็นไม่เพียงพอเราแนะนำให้คุณสำรวจเอกสารทางการโดยใช้การอ้างอิงด้านล่าง
ไปที่เว็บไซต์อย่างเป็นทางการของเอกสาร Apache