การติดตั้ง Nginx Web Server ด้วย MariaDB และ PHP/PHP-FPM บน Fedora 23
Fedora 23 เปิดตัวเมื่อไม่กี่วันที่ผ่านมา และเราก็ติดตามอย่างใกล้ชิดนับตั้งแต่นั้นเป็นต้นมา เราได้กล่าวถึงการติดตั้ง Fedora 23 Workstation and Server แล้ว หากคุณยังไม่ได้ตรวจสอบบทความเหล่านั้น คุณสามารถดูได้จากลิงก์ด้านล่าง:
- การติดตั้งเวิร์กสเตชัน Fedora 23
- การติดตั้ง Fedora 23 Server และการดูแลระบบด้วย Cockpit
ในบทความนี้ เราจะแสดงวิธีการติดตั้งสแต็ก LEMP LEMP คือการผสมผสานระหว่างเครื่องมือเว็บที่ออกแบบมาสำหรับโครงการเว็บ LEMP ประกอบด้วย – Linux, Nginx (ออกเสียงว่า Engine X), MariaDB และ PHP
การติดตั้ง Fedora เสร็จสมบูรณ์แล้ว ดังนั้นเราจึงพร้อมที่จะดำเนินการในส่วนถัดไป หากคุณยังไม่มี โปรดดูลิงก์ด้านบนเพื่อช่วยคุณในขั้นตอนการติดตั้ง เพื่อให้ติดตามและทำความเข้าใจได้ง่ายขึ้น ฉันจะแยกบทความออกเป็น 3 ส่วน หนึ่งอันสำหรับแต่ละแพ็คเกจ
ก่อนที่เราจะเริ่ม ขอแนะนำให้คุณอัปเดตแพ็คเกจระบบของคุณก่อน สามารถทำได้ง่ายๆ ด้วยคำสั่ง เช่น:
dnf update
1. ติดตั้งเว็บเซิร์ฟเวอร์ Nginx
1. Nginx เป็นเว็บเซิร์ฟเวอร์น้ำหนักเบาที่ออกแบบมาเพื่อประสิทธิภาพสูงโดยใช้ทรัพยากรบนเซิร์ฟเวอร์ต่ำ มักเป็นตัวเลือกที่ต้องการในสภาพแวดล้อมขององค์กรเนื่องจากความเสถียรและความยืดหยุ่น
Nginx สามารถติดตั้ง fedora ได้อย่างง่ายดายด้วยคำสั่งเดียว:
dnf install nginx
2. เมื่อติดตั้ง nginx แล้ว ยังมีขั้นตอนสำคัญอีกสองสามขั้นตอนที่ต้องทำ ขั้นแรกเราจะตั้งค่า Nginx ให้เปิดใช้งานโดยอัตโนมัติเมื่อบูตระบบ จากนั้นเราจะเริ่มและยืนยันสถานะของ Nginx
systemctl enable nginx.service
sudo systemctl start nginx
sudo systemctl status nginx
3. ต่อไป เราจะเพิ่มกฎไฟร์วอลล์ที่จะช่วยให้เราสามารถเข้าถึงพอร์ต http และ https มาตรฐาน:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
4. ตอนนี้มาตรวจสอบว่า nginx ทำงานตามที่คาดไว้หรือไม่ ค้นหาที่อยู่ IP ของคุณโดยออกคำสั่งต่อไปนี้:
ip a | grep inet
5. ตอนนี้คัดลอก/วางที่อยู่ IP นั้นลงในเบราว์เซอร์ของคุณ คุณควรเห็นผลลัพธ์ต่อไปนี้:
http://your-ip-address
6. ต่อไป เราต้องกำหนดค่าชื่อเซิร์ฟเวอร์ Nginx เปิดไฟล์การกำหนดค่าต่อไปนี้ด้วยโปรแกรมแก้ไข vi
vi /etc/nginx/nginx.conf
ค้นหาคำสั่ง “server_name” สถานะปัจจุบันจะถูกตั้งค่าเป็น:
server_name _;
เปลี่ยนขีดเส้นใต้ด้วยที่อยู่ IP ของเซิร์ฟเวอร์ของคุณ:
server_name 192.168.0.6
หมายเหตุ: ตรวจสอบให้แน่ใจว่าได้เปลี่ยนสิ่งนี้ด้วยที่อยู่ IP ของเซิร์ฟเวอร์ของคุณเอง!
สิ่งสำคัญที่ต้องระบุคือรูทไดเรกทอรีสำหรับเว็บเซิร์ฟเวอร์ Nginx คือ /usr/share/nginx/html
ซึ่งหมายความว่าคุณจะต้องอัปโหลดไฟล์ของคุณไปที่นั่น
2. ติดตั้ง MariaDB
7. MariaDB เป็นเซิร์ฟเวอร์ฐานข้อมูลเชิงสัมพันธ์ที่ค่อยๆ กลายเป็นตัวเลือกอันดับต้นๆ สำหรับ Linux รุ่นต่างๆ รุ่นใหม่
MariaDB เป็นชุมชนทางแยกของเซิร์ฟเวอร์ฐานข้อมูล MySQL ที่มีชื่อเสียง MariaDB มีไว้เพื่อให้เป็นอิสระภายใต้ GNU GPL ซึ่งเป็นหนึ่งในเหตุผลที่ทำให้เป็นตัวเลือกที่ต้องการมากกว่า MySQL
หากต้องการติดตั้ง MariaDB บนเซิร์ฟเวอร์ Fedora 23 ของคุณ ให้รันคำสั่งต่อไปนี้:
dnf install mariadb-server
8. เมื่อการติดตั้งเสร็จสมบูรณ์ เราสามารถตั้งค่า MariaDB ให้เริ่มทำงานโดยอัตโนมัติเมื่อบูตระบบ และเริ่มเซิร์ฟเวอร์ MariaDB ด้วยคำสั่งต่อไปนี้:
systemctl enable mariadb
systemctl start mariadb
systemctl status mariadb
9. ขั้นตอนถัดไปเป็นทางเลือก แต่แนะนำ คุณสามารถรักษาความปลอดภัยการติดตั้ง MariaDB ของคุณและตั้งรหัสผ่านใหม่สำหรับผู้ใช้รูทได้ เพื่อรักษาความปลอดภัยการติดตั้งให้รันคำสั่งต่อไปนี้:
mysql_secure_installation
นี่จะเป็นการเริ่มชุดคำถามที่คุณจะต้องตอบเพื่อความปลอดภัยในการติดตั้ง คำถามนี้ง่ายมากและไม่ต้องการคำอธิบายเพิ่มเติม นี่คือตัวอย่างการกำหนดค่าที่คุณสามารถใช้ได้:
3. ติดตั้ง PHP และโมดูลของมัน
10. ขั้นตอนสุดท้ายของการตั้งค่าของเราคือการติดตั้ง PHP PHP เป็นภาษาโปรแกรมที่ใช้สำหรับการพัฒนาเว็บแอปพลิเคชันแบบไดนามิก เว็บไซต์จำนวนมากบนอินเทอร์เน็ตสร้างขึ้นโดยใช้ภาษานี้
การติดตั้ง PHP ใน Fedora 23 นั้นค่อนข้างง่าย เริ่มต้นด้วยการรันคำสั่งด้านล่าง:
dnf install php php-fpm php-mysql php-gd
11. เพื่อให้สามารถเรียกใช้ไฟล์ PHP ได้ จำเป็นต้องเปลี่ยนแปลงการกำหนดค่า PHP เล็กน้อย ตามค่าเริ่มต้น ผู้ใช้ที่ต้องการใช้ php-fpm คือ Apache
สิ่งนี้จะต้องเปลี่ยนเป็น nginx เปิดไฟล์ www.conf
ด้วยโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ เช่น nano หรือ vim:
vim /etc/php-fpm.d/www.conf
ค้นหาบรรทัดต่อไปนี้:
; RPM: apache Choosed to be able to access some dir as httpd
user = apache
; RPM: Keep a group allowed to write in log dir.
group = apache
เปลี่ยน "apache"
ด้วย "nginx"
ดังที่แสดงด้านล่าง:
; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
12. ตอนนี้ให้บันทึกไฟล์ เราจะต้องรีสตาร์ท php-fpm และ Nginx เพื่อใช้การเปลี่ยนแปลง การรีสตาร์ทสามารถทำได้ด้วย:
systemctl restart php-fpm
systemctl restart nginx
และตรวจสอบสถานะ:
systemctl status php-fpm
systemctl status nginx
13. ถึงเวลาแล้วที่เราจะทดสอบการตั้งค่าของเรา เราจะสร้างไฟล์ทดสอบชื่อ info.php ในไดเรกทอรีรากของเว็บของ Nginx /usr/share/nginx/html/:
cd /usr/share/nginx/html
vi info.php
ในไฟล์นั้นให้ใส่รหัสต่อไปนี้:
<?php
phpinfo()
?>
บันทึกไฟล์และเข้าถึงที่อยู่ IP ของระบบของคุณในเบราว์เซอร์ คุณควรเห็นหน้าต่อไปนี้:
http://your-ip-address/info.php
บทสรุป
ยินดีด้วย การตั้งค่าสแต็ก LEMP บนเซิร์ฟเวอร์ Fedora 23 เสร็จสมบูรณ์แล้ว คุณสามารถเริ่มทดสอบโปรเจ็กต์ใหม่ของคุณและลองใช้ PHP และ MariaDB ได้ หากคุณมีคำถามหรือพบปัญหาใดๆ ในขณะที่ตั้งค่า LEMP บนระบบของคุณ โปรดแบ่งปันประสบการณ์ของคุณในส่วนความคิดเห็นด้านล่าง