การติดตั้ง NginX และ PHP ให้สามารถทำงานร่วมกันได้บนระบบปฏิบัติการ Ubuntu

1 อัพเดทระบบปฏิบัติการ Ubuntu โดยพิมพ์คำสั่ง sudo apt-get update

2. ติดตั้งโปรแกรมเว็บเซิร์ฟเวอร์ NginX โดยพิมพ์คำสั่ง sudo apt-get install -y nginx

3. ต่อจากนั้นให้พิมพ์คำสั่งดังนี้เพื่อค้นหาเวอร์ชันล่าสุดของ PHP

sudo add-apt-repository -y ppa:ondrej/php

4. ติดตั้งโปรแกรมภาษา PHP โดยพิมพ์คำสั่งดังนี้

sudo apt-get install -y php8.3-fpm

5. ติดตั้ง extension ที่จำเป็นสำหรับภาษา PHP โดยพิมพ์คำสั่งดังนี้

sudo apt-get install php8.3-mysql php8.3-curl php8.3-mbstring php8.3-fileinfo php8.3-intl php8.3-gd php8.3-ldap php8.3-bcmath php8.3-xml php8.3-zip

6. ตรวจสอบเวอร์ชันของ PHP โดยพิมพ์คำสั่ง php -v

7. เปิดไฟล์ default ซึ่งอยู่ในไดเรกทอรี่ /etc/nginx/sites-available โดยพิมพ์คำสั่ง sudo nano /etc/nginx/sites-available/default

8. แก้ไขไฟล์ default ให้มีข้อความตามรูปภาพ

9. กดปุ่ม Ctrl + O แล้วกดปุ่ม Enter เพื่อบันทึกไฟล์ดังกล่าว

10. กดปุ่ม Ctrl + X เพื่อออกจากโปรแกรม nano

11. กำหนดสิทธิ์ให้ไดเรกทอรี่ /var/www/html สามารถรันได้โดยพิมพ์คำสั่ง
sudo chmod -R 777 /var/www/html

12. สร้างไฟล์ที่ชื่อ phpinfo.php ไว้ในไดเรกทอรี่ /var/www/html โดยพิมพ์คำสั่ง sudo nano /var/www/html/phpinfo.php

13. พิมพ์ข้อความลงในไฟล์ที่สร้างขึ้นตามภาพ

14. กดปุ่ม Ctrl + O แล้วกดปุ่ม Enter เพื่อบันทึกไฟล์ดังกล่าว

15. กดปุ่ม Ctrl + X เพื่อออกจากโปรแกรม nano

16. รีสตาร์ทเซอร์วิส nginx โดยพิมพ์คำสั่ง sudo systemctl restart nginx

17. รีสตาร์ทเซอร์วิส php โดยพิมพ์คำสั่ง sudo systemctl restart php8.3-fpm

18. เปิดโปรแกรมเว็บบราวเซอร์ขึ้นมา

19. กรอก URL address เป็น http://localhost/phpinfo.php แล้วกดปุ่ม Enter โปรแกรมเว็บบราวเซอร์ก็จะแสดงหน้าจอตามภาพ

20. เปิดไฟล์ php.ini ซึ่งอยู่ในไดเรกทอรี่ /etc/php/8.3/fpm/ โดยพิมพ์คำสั่ง sudo nano /etc/php/8.3/fpm/php.ini

21. ทำการแก้ไขในส่วน date.timezone ให้เป็น Asia/Bangkok ตามรูป เพื่อกำหนดเขตเวลาเริ่มต้นสำหรับประเทศไทย

22. ทำการแก้ไขในส่วน intl.default_locale ให้เป็น th_TH.UTF-8 ตามรูป

23. กดปุ่ม Ctrl + O แล้วกดปุ่ม Enter เพื่อบันทึกไฟล์

24. กดปุ่ม Ctrl + X เพื่อออกจากโปรแกรม

25. รีสตาร์ทเซอร์วิส php โดยพิมพ์คำสั่ง sudo systemctl restart php8.3-fpm

26. รีเฟรชหน้าจอบนเว็บบราวเซอร์ ข้อมูลในส่วน date.timezone จะเปลี่ยนไปดังภาพ

ผู้เขียน

ปวรุตม์ พงศ์พฤฒานนท์
ฝ่ายระบบสารสนเทศ
สำนักคอมพิวเตอร์
pavarudh@g.swu.ac.th