บทความ

บทความใหม่ล่าสุด

วิธีติดตั้ง LAMP บน Raspberry Pi


LAMP = Linux, Apache, MySQL, PHP เป็นกลุ่มซอฟท์แวร์ที่เหมาะสำหรับใช้ในการพัฒนาเวบ ในหัวข้อนี้เราจะติดตั้งกลุ่มซอฟท์แวร์นี้ลงบน Raspberry Pi ซึ่งมีการติดตั้ง Raspbian (หรือ Raspberry pi OS) ไว้เรียบร้อยแล้ว

ขั้นตอนการติดตั้ง LAMP ในที่นี้จะทำผ่านทาง terminal หรือผ่าน SSH เข้าไปที่ตัว Raspberry Pi

1. Update และ Upgrade ตัว Raspberry Pi ก่อน

ใช้คำสั่งดังนี้ ทำการอัพเดท และอัพเกรดตัว Raspberry Pi ก่อนทำการติดตั้งซอฟท์แวร์อะไรใหม่

sudo apt update && sudo apt upgrade -y

2. ติดตั้ง Apache2

ทำการติดตั้ง Apache2 เพื่อไว้ใช้เป็น Web server ซึ่งจะเป็นตัวจัดการการร้องขอการเข้าถึงหน้าเวบต่างๆ โดยใช้คำสั่งดังนี้

sudo apt install apache2 -y

หลังจากนั้น ทำการทดสอบการติดตั้ง Apache2 ดูว่าใช้งานได้หรือไม่ โดยไปที่ไดเรคตอรี่ /var/www/html แล้วลิสต์ไฟล์ที่มีอยู่ขึ้นมา

cd /var/www/html
ls -la

จะพบไฟล์ชื่อ index.html ปรากฎอยู่ ให้เปิดเบราเซอร์เข้าไปที่ ip ของ Raspberry Pi ก็จะปรากฎหน้าเวบ Apache2 Debian Default Page ขึ้นมาตามภาพด้านล่างนี้

ปล. หากไม่ทราบ ip ของตัว Raspberry Pi ให้ใช้คำสั่งด้านล่างนี้เพื่อแสดง ip ออกมา

hostname -I

3. ติดตั้ง PHP

PHP เป็นภาษาสคริปที่ใช้รันบนฝั่งเซิร์ฟเวอร์ นิยมใช้ในการสร้างเวบแอพพลิเคชั่นหรือหน้าเวบที่เปลี่ยนแปลงไปตามเงื่อนไขต่างๆได้ การติดตั้ง PHP ให้ใช้คำสั่งดังต่อไปนี้

sudo apt install php -y

หลังจากติดตั้งแล้ว สามารถทดสอบการติดตั้ง PHP ได้โดยการสร้างไฟล์ index.php ง่ายๆขึ้นมา (อาจจะลบไฟล์ index.html ออกไปก่อน หรือเปลี่ยนชื่อไปเป็นชื่ออื่นก็ได้) ดังนี้

sudo rm index.html
sudo nano index.php

แล้วพิมพ์บรรทัดคำสั่งนี้ลงไป แล้วบันทึกและออกจาก nano editor

<?php echo "Hello PHP world"; ?>

แล้วเริ่มตัว Apache2 service ใหม่ ด้วยคำสั่งต่อไปนี้

sudo service apache2 restart

ถึงตอนนี้ หากเปิดเบราเซอร์เข้าไปที่ ip ของ Raspberry Pi หน้าเวบก็จะเปลี่ยนเป็นตามภาพด้านล่างนี้

4. ติดตั้ง MySQL (MariaDB Server)

ใช้คำสั่งต่อไปนี้ เพื่อติดตั้ง MySQL Server และแพคเกจ PHP-MySQL

sudo apt install mariadb-server php-mysql -y

เมื่อติดตั้ง MySQL Server แล้วก็ต้องเริ่ม Apache2 service ใหม่เพื่อใช้การติดตั้งมีผลกระทบ

sudo service apache2 restart

5. เพิ่มความปลอดภัยให้กับ MySQL

หลังจากติดตั้ง MySQL เสร็จใหม่ๆ ยูสเซอร์ root จะยังคงไม่มีพาสเวิร์ด (พาสเวิร์ดเป็น blank) เพื่อความปลอดภัย จึงควรตั้งพาสเวิร์ดใหม่ให้กับ root โดยใช้คำสั่งดังนี้

sudo mysql_secure_installation

จากนั้นให้ตอบคำถามดังต่อไปนี้

  • Enter current password for root: ให้ตอบ Enter (เริ่มต้นไม่มีพาสเวิร์ด)
  • กด Y และ Enter เพื่อเซ็ท root password ใหม่
  • ป้อนพาสเวิร์ดใหม่สำหรับ root (ป้อน 2 ครั้ง)
  • ตอบ Y เพื่อลบ anonymous users
  • ตอบ Y เพื่อห้าม root login remotely
  • ตอบ Y เพื่อลบ test database
  • ตอบ Y เพื่อ reload privilege tables now

ถึงตอนนี้ Database และ MySQL ก็ไม่สามารถเข้าถึงได้โดยไม่มีการป้องกันแล้ว

6. สร้าง User และ Password ไว้สำหรับใช้กับ phpMyAdmin

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

sudo mysql --user=root --password

แล้วป้อนพาสเวิร์ดของ root ตามที่ตั้งในข้อ 5 แล้วใช้คำสั่งต่อไปนี้สร้างยูสเซอร์ใหม่

> CREATE USER admin@localhost IDENTIFIED BY 'your_password';
> GRANT ALL PRIVILEGES ON *.* TO admin@localhost;
> FLUSH PRIVILEGES;
> exit;

7. ติดตั้ง phpMyAdmin

ใช้คำสั่งต่อไปนี้ติดตั้ง phpMyAdmin

sudo apt install phpmyadmin -y

หลังจากนั้น ตอบคำถามตามนี้

  • เลือก Apache2 (เคาะ space bar) แล้วกด Enter หรือคลิก OK
  • Configure database for phpmyadmin with dbconfig-common? ตอบ Yes
  • ป้อนพาสเวิร์ด (ตามที่ตั้งในข้อ 6) แล้วกด OK และคอนเฟิร์มพาสเวิร์ดอีกครั้ง

8. Enable PHP MySQLi extension

หลังจากติดตั้ง phpMyAdmin แล้ว ให้ Enable PHP MySQLi extension แล้วเริ่ม Apache2 service ใหม่

sudo phpenmod mysqli
sudo service apache2 restart

9. เพิ่ม Link ให้กับ phpMyAdmin

ทดสอบการเปิด phpMyAdmin โดยเข้าเบราเซอร์ด้วย ip ของ Raspberry Pi ตามด้วย /phpmyadmin หากขึ้นหน้าเวบว่า Not Found ให้ย้ายไดเร็คตอรี่ phpmyadmin ไปไว้ที่ /var/www/html แล้วใช้คำสั่งเพิ่ม link ตามนี้

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

แต่ถ้าเปิดเข้า phpMyAdmin ได้แล้ว ก็ไม่ต้องย้ายไดเรคตอรี่ แต่ให้เพิ่มบรรทัดลงไปในไฟล์ apache2.conf ตามนี้

sudo nano /etc/apache2/apache2.conf

เพิ่มบรรทัดนี้ลงไปด้านล่างสุดของไฟล์ แล้ว save และออกจาก Editor (กด Ctrl+x แล้วตอบ Yes แล้วกด Enter)

Include /etc/phpmyadmin/apache.conf

จากนั้นเพิ่ม link ตามนี้

sudo ln -s /usr/share/phpmyadmin /var/www/html

10. ขั้นตอนเพิ่มเติม (Optional but recommended)

ควรเปลี่ยนการอนุญาตการเข้าไปที่ไดเร็คตอรี่ /var/www/html ใหม่ตามนี้

ls -lh /var/www/
sudo chown -R pi:www-data /var/www/html/
sudo chmod -R 770 /var/www/html/
ls -lh /var/www/


บทความก่อนหน้านี้

วิธีติดตั้ง LAMP บน Raspberry Pi

LAMP = Linux, Apache, MySQL, PHP เป็นกลุ่มซอฟท์แวร์ที่เหมาะสำหรับใช้ในการพัฒนาเวบ ในหัวข้อนี้เราจะติดตั้งกลุ่มซอฟท์แวร์นี้ลงบน Raspberry Pi ซึ่งมีการติดตั้ง Raspbian (หรือ Raspberry pi OS) ไว้เรียบร้อยแล้ว ขั้นตอนการติดตั้ง LAMP ในที่นี้จะทำผ่านทาง ...

Setting Up Connection Profile To Deploy Delphi App to CentOS Server

ในการพัฒนาแอพพลิเคชั่นบน Delphi เพื่อส่งไปทำงานในฝั่ง Server (โดยมากก็มักจะเป็นแอพพลิเคชั่นประเภท web server, web service) ที่เป็น Linux based ซึ่งในที่นี้คือ CentOS 7 64bit นั้น จำเป็นจะต้องติดตั้ง SDK ลงบนเครื่องที่ใช้พัฒนาโปรแกรม ...

Protected: Calculation of Corrugated Fin and Tank Dimension

This content is password protected. To view it please enter your password below: Password: ...

Protected: Calculation of Tank, Upper frame, Cover, Base Dimension

This content is password protected. To view it please enter your password below: Password: ...

สูตรขนมกล้วยทอดที่เหมาะกับครอบครัวเรา 1

สูตรขนมกล้วยทอดที่เหมาะกับครอบครัวเรา 1 ( เพราะอาจจะมีสูตรอื่นๆ ที่ชอบมากกว่า เหอะๆๆๆ ) เริ่มแรกหาจากในอินเตอร์เนต ต้องใช้ แป้งข้าวเจ้า , กะทิ , มะพร้าวขูด , งา , น้ำตาล , น้ำปูนใส ...

DIY ติดตั้งแก๊ส LPG อินโนวา กระทู้ในตำนาน

ครั้งแรกที่ซื้อรถอินโนวามา ก็ไม่คิดถึงว่าจะต้องติดตั้งแก๊ส LPG หรือ NGV เพราะก็ไม่ได้อยากใช้รถให้มันเยอะนัก แต่ใช้รถไปได้ไม่ถึง 1 หมื่นกม.แรก ก็ทนไม่ไหวกับค่าน้ำมันที่แสนแพงมหาโหดในเวลานั้น ลิตรละเกือบ 40 บาท จึงศึกษาข้อดีข้อเสียระหว่าง LPG กับ NGV ดู รวมทั้งเลือกหาอู่ที่จะทำการติดตั้งดีๆด้วย สุดท้ายได้ข้อสรุปเลือก ...

เรื่องเล่า สมบัติเก่าเก็บ (สมบัติบ้า) – WoodCrest Hotel

เรื่องเล่า สมบัติเก่าเก็บ (สมบัติบ้า) - WoodCrest Hotel เก็บของย้ายบ้าน ก็ได้มีโอกาสสำรวจของ ทิ้งบ้าง ให้ญาติบ้าง บริจาคบ้าง เก็บเข้ากรุสมบัติบ้า.... บ้าง ( เก็บต่อไปจนกว่าจะทำใจทิ้งได้) วันนี้เจอบิลค่าซักผ้าของโรงแรม  Wood Crest Hotel ที่ ...

นินทาหลาน เมื่อหลานยังเด็ก – พี่ส้ม เจ้าหนูจำมัย

พี่ส้ม เจ้าหนูจำมัย ตอนป.5 หรือ ป.6 นะ อาจิ๋วเปิดบริษัท เลยให้พี่ส้มมาทำงานวันหยุด พี่ส้มนั่งรถเมล์ หรือสองแถว มาจากโรงกลึง ส่วนน้องพลอยอยู่บ้าน ยังเด็กมาก จะมาป่วนซะมากกว่า พี่ส้มมาถึงต้องลงสมุดว่ามาทำงาน แล้วก็ช่วยงานหลายอย่าง พี่ส้มเป็นคนช่างถาม ถามทุกเรื่อง สงสัยไปหมด ถามทั้งวัน ...

นินทาหลาน เมื่อหลานยังเด็ก – หนังสือทำมือเล่มแรกของน้องพลอย

หนังสือทำมือเล่มแรกของน้องพลอย ที่อาตาลจำไม่ได้ว่าตอนอยู่ชั้นประถมปีที่เท่าไหร่ รื้อของ เก็บบ้าน เคลียร์ของ ก็ได้เจอ หนังสือทำมือเล่มเล็ก มีภาพวาดคุ้นๆ ลายมือก็ยิ่งคุ้น  ... คิดถึงเลย ถ้าไม่เจอสมุดเล่มนี้ ก็จำไม่ได้เลยว่าเราเคยวาดภาพเล่นกันตอนวันหยุด เมื่อก่อนเราจะมีกิจกรรมกันหลังจากทำข้าวต้มตอนเช้า ล้างพื้นห้องว่างข้างบ้าน และเริ่มทบทวนการบ้าน สอนหนังสือ เล่นเกม กินขนม และ ...

999 thoughts on “บทความ

Leave a Reply