วิธีติดตั้ง Apache ด้วยโฮสต์เสมือนบน Debian 10
Apache หรือที่เรียกกันทั่วไปว่า เซิร์ฟเวอร์ Apache HTTP เป็นเว็บเซิร์ฟเวอร์ข้ามแพลตฟอร์มแบบโอเพ่นซอร์สฟรีที่ดูแลโดย Apache Foundation เป็นเว็บเซิร์ฟเวอร์ชั้นนำที่มีส่วนแบ่งการตลาด 35% บนอินเทอร์เน็ต โดยที่ Nginx มาเป็นอันดับสองด้วย 24%
Apache มีความน่าเชื่อถือสูง ยืดหยุ่น ติดตั้งง่าย และมีคุณลักษณะมากมายซึ่งทำให้เป็นที่นิยมในหมู่นักพัฒนาและผู้ที่ชื่นชอบ Linux นอกจากนี้ยังได้รับการบำรุงรักษาและอัปเดตเป็นประจำโดยมูลนิธิ Apache และช่วยในการแก้ไขข้อบกพร่องของซอฟต์แวร์และปรับปรุงประสิทธิภาพโดยรวม เมื่อถึงเวลาเขียนบทความนี้ Apache เวอร์ชันล่าสุดคือ 2.4.39
อ่านเพิ่มเติม: ติดตั้ง Nginx ด้วย Server Blocks (โฮสต์เสมือน) บน Debian 10
ในคู่มือนี้ เราจะแนะนำคุณตลอดขั้นตอนในการติดตั้งเว็บเซิร์ฟเวอร์ Apache บน Debian 10
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะเริ่ม ตรวจสอบให้แน่ใจว่ามีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้:
- ตัวอย่างของ Debian 10
- ชื่อโดเมนแบบเต็ม (FQDN) ชี้ไปที่เซิร์ฟเวอร์
- ในคู่มือนี้ เราใช้โดเมน
linux-console.net
ที่ชี้ไปยังระบบ Debian 10 ที่มีที่อยู่ IP 192.168.0.104 - การเชื่อมต่ออินเทอร์เน็ตที่ดี
เมื่อการตรวจสอบก่อนการบินของเราเสร็จสิ้นแล้ว มาเริ่มต้นกันได้เลย
ขั้นตอนที่ 1: อัปเดตพื้นที่เก็บข้อมูลระบบ Debian 10
ขั้นตอนแรกในการติดตั้ง Apache บน Debian 10 คือการอัปเดตที่เก็บข้อมูลของระบบ เพื่อให้บรรลุเป้าหมายนี้ ให้เข้าสู่ระบบในฐานะผู้ใช้ทั่วไปและใช้สิทธิ์ sudo เพื่อรันคำสั่ง
sudo apt update -y
ขั้นตอนที่ 2: ติดตั้ง Apache บน Debian 10
การติดตั้ง Apache เป็นเรื่องง่ายและค่อนข้างตรงไปตรงมา เมื่อคุณอัปเดตที่เก็บข้อมูลระบบสำเร็จแล้ว ให้เรียกใช้คำสั่งด้านล่างเพื่อติดตั้ง Apache บน Debian 10
sudo apt install apache2 -y
ขั้นตอนที่ 3: การตรวจสอบสถานะของ Apache Webserver
หลังจากติดตั้งเว็บเซิร์ฟเวอร์ Apache สำเร็จแล้ว ขอแนะนำให้ตรวจสอบว่าบริการทำงานอยู่หรือไม่ ระบบ systemd Linux ส่วนใหญ่จะเริ่มบริการโดยอัตโนมัติเมื่อทำการติดตั้ง
หากต้องการตรวจสอบสถานะของเว็บเซิร์ฟเวอร์ Apache ให้ดำเนินการคำสั่ง
sudo systemctl status apache2
หากบริการไม่ทำงาน ให้เริ่มบริการโดยใช้คำสั่ง
sudo systemctl start apache2
หากต้องการเปิดใช้งานเซิร์ฟเวอร์ Apache Web เมื่อบูตให้รันคำสั่ง
sudo systemctl enable apache2
หากต้องการรีสตาร์ท Apache ให้รัน
sudo systemctl restart apache2
ขั้นตอนที่ 4: กำหนดค่าไฟร์วอลล์เพื่ออนุญาตพอร์ต HTTP
หากมีการกำหนดค่าไฟร์วอลล์ UFW แล้ว เราจำเป็นต้องอนุญาตบริการ Apache ข้ามไฟร์วอลล์ เพื่อให้ผู้ใช้ภายนอกสามารถเข้าถึงเว็บเซิร์ฟเวอร์ได้
เพื่อให้บรรลุเป้าหมายนี้ เราจำเป็นต้องอนุญาตการรับส่งข้อมูลบนพอร์ต 80 บนไฟร์วอลล์
sudo ufw allow 80/tcp
เพื่อตรวจสอบว่าพอร์ตได้รับอนุญาตบนไฟร์วอลล์แล้ว ให้รัน
sudo ufw status
นอกจากนี้ คุณสามารถใช้คำสั่ง netstat เพื่อตรวจสอบพอร์ตดังที่แสดง
sudo netstat -pnltu
ขั้นตอนที่ 5: ตรวจสอบ Apache HTTP เว็บเซิร์ฟเวอร์
เมื่อตั้งค่าทั้งหมดเรียบร้อยแล้ว ให้เปิดเว็บเบราว์เซอร์ที่คุณชื่นชอบและเรียกดูที่อยู่ IP ของเซิร์ฟเวอร์หรือ FQDN ดังที่แสดง
http://server-IP-address
OR
http://server-domain-name
ขั้นตอนที่ 6: การกำหนดค่า Apache เว็บเซิร์ฟเวอร์
เมื่อตั้งค่าเว็บเซิร์ฟเวอร์ Apache เรียบร้อยแล้ว ก็ถึงเวลาโฮสต์เว็บไซต์ตัวอย่าง
ไฟล์เว็บเพจ Apache เริ่มต้น index.html
จะอยู่ที่ /var/www/html/
ซึ่งเป็นไดเร็กทอรี webroot คุณสามารถโฮสต์ไซต์เดียวหรือสร้างไฟล์โฮสต์เสมือนเพื่อโฮสต์หลายไซต์ได้
หากต้องการโฮสต์ไซต์เดียว คุณสามารถแก้ไขไฟล์ index.html
ที่อยู่ในไดเร็กทอรี webroot
แต่ก่อนอื่นให้ทำการสำรองไฟล์ตามที่แสดง
sudo mv /var/www/html/index.html /var/www/html/index.html.bak
ตอนนี้เรามาสร้างไฟล์ index.html
ใหม่
sudo nano /var/www/html/index.html
มาเพิ่มเนื้อหาตัวอย่าง HTML ดังที่แสดง
<html>
<head>
<title>Welcome to crazytechgeek</title>
</head>
<body>
<h1>Howdy Geeks! Apache web server is up & running</h1>
</body>
</html>
ออกจากโปรแกรมแก้ไขข้อความและรีสตาร์ทเว็บเซิร์ฟเวอร์
sudo systemctl restart apache2
ตอนนี้โหลดเว็บเบราว์เซอร์ของคุณใหม่และสังเกตเห็นการเปลี่ยนแปลงในไซต์ใหม่ของคุณ
ขั้นตอนที่ 7: การสร้างโฮสต์เสมือนบน Apache
หากคุณต้องการให้เว็บเซิร์ฟเวอร์โฮสต์หลายไซต์ วิธีที่ดีที่สุดคือสร้างโฮสต์เสมือนในเว็บเซิร์ฟเวอร์ Apache โฮสต์เสมือนมีประโยชน์เมื่อคุณต้องการโฮสต์หลายโดเมนในเซิร์ฟเวอร์เดียว
ขั้นแรก เราต้องสร้างไดเร็กทอรี webroot สำหรับโดเมน linux-console.net
sudo mkdir -p /var/www/html/linux-console.net/
ต่อไป เราจะกำหนดสิทธิ์ที่จำเป็นให้กับไดเร็กทอรีโดยใช้ตัวแปร $USER
sudo chown -R $USER:$USER /var/www/html/linux-console.net/
จากนั้น กำหนดสิทธิ์ที่จำเป็นของไดเร็กทอรี webroot สำหรับโดเมน
sudo chmod -R 755 /var/www/html/linux-console.net
ตอนนี้ใช้โปรแกรมแก้ไขข้อความที่คุณชื่นชอบ มุ่งหน้าและสร้างตัวอย่างไฟล์ index.html
sudo nano /var/www/html/linux-console.net/index.html
มาเพิ่มเนื้อหาตัวอย่าง HTML ดังที่แสดง
<html>
<head>
<title>Welcome to TecMint.com</title>
</head>
<body>
<h1>Howdy Geeks!</h1>
</body>
</html>
บันทึกและออกจากโปรแกรมแก้ไขข้อความ
ตอนนี้ให้สร้างไฟล์โฮสต์เสมือนสำหรับโดเมนโดยใช้คำสั่งที่แสดงด้านล่าง
sudo nano /etc/apache2/sites-available/linux-console.net.conf
ตอนนี้คัดลอกและวางเนื้อหาด้านล่างและแทนที่โดเมน linux-console.net
ด้วยโดเมนของคุณเอง
<VirtualHost *:80>
ServerAdmin [email
ServerName linux-console.net
ServerAlias linux-console.net
DocumentRoot /var/www/html/linux-console.net/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
บันทึกและออก.
ณ จุดนี้ ให้เปิดใช้งานไฟล์โฮสต์เสมือนตามที่แสดง
sudo a2ensite linux-console.net.conf
ตอนนี้เรามาปิดการใช้งานไซต์เริ่มต้นกันดีกว่า
sudo a2dissite 000-default.conf
เพื่อให้การเปลี่ยนแปลงมีผล ให้โหลดเว็บเซิร์ฟเวอร์ apache อีกครั้ง
sudo systemctl restart apache2
ตอนนี้โหลดเว็บเซิร์ฟเวอร์ของคุณใหม่และสังเกตการเปลี่ยนแปลงสำหรับโดเมนของคุณ
หากคุณต้องการเปิดใช้งาน HTTPS บนเว็บไซต์ของคุณ โปรดอ่านบทความนี้: วิธีตั้งค่าใบรับรอง SSL ฟรีสำหรับ Apache บน Debian 10
บทสรุป
เรามาถึงจุดสิ้นสุดของบทช่วยสอนแล้ว ในคู่มือนี้ คุณได้เรียนรู้วิธีการติดตั้ง Apache บน Debian 10 และยังกำหนดค่าโฮสต์เสมือนเพื่อโฮสต์โดเมนอื่นอีกด้วย รู้สึกยินดีที่จะกลับมาหาเราพร้อมกับข้อเสนอแนะของคุณ