Devahoy Logo
PublishedAt

Web Development

ขั้นตอนการติดตั้ง Apache, MySQL และ PHP บน Ubuntu

ขั้นตอนการติดตั้ง Apache, MySQL และ PHP บน Ubuntu

เมื่อวันก่อน ผมไปเห็นกรุ๊ปนึงในเฟซบุ๊ค ถามว่า ถ้าหากว่าใช้ Ubuntu จะสามารถเขียนเว็บได้มั้ยครับ? มันลง AppServ ได้มั้ย แล้ววิธีการติดตั้งทำยังไง? ยากหรือเปล่า?

บทความนี้จะนำเสนอวิธีการติดตั้ง LAMP Stack (Linux, Apache, MySQL, PHP) บน Ubuntu โดยภายในบทความจะแบ่งออกเป็นสองส่วนคือ

ขั้นตอนและวิธีติดตั้งก็นำไปประยุกต์ใช้เองนะครับ สามารถติดตั้งได้ทั้งบน Ubuntu Desktop หรือ Ubuntu Server

ตัวอย่างบทความนี้ ผมทดลองติดตั้งแบบ Manual ผ่าน VPS ของ Digital Ocean นะครับ โดยใช้ Ubuntu Server 14.04 และ Ubuntu Desktop 13.10 ด้วยโปรแกรม XAMPP

ติดตั้งผ่านโปรแกรม XAMPP

XAMPP

ตัวโปรแกรม XAMPP มันก็คล้ายๆกับพวก AppServ หรือ WAMP Server นั่นเองครับ คือมันรวมพวก package ต่างๆ ที่จำเป็นจะต้องใช้รันเซิฟเวอร์ มาอยู่ในโปรแกรมเดียว เจ้าตัว XAMPP นี้สามารถติดตั้งได้ทั้ง Windows, Mac และ Linux

ภายในโปรแกรม มันประกอบไปด้วย หลักๆเลยคือ

  • Apache 2.4.9
  • MySQL 5.6.16
  • PHP 5.5.11 & PEAR
  • SQLite 2.8.17/3.7.17
  • Perl 5.16.3
  • phpMyAdmin 4.1.12
  • OpenSSL 1.0.1g
  • cUrl 7.30.0
  • อื่นๆ อีกหลายตัวเลย

ขั้นตอนการติดตั้ง

ไปหน้า ดาวน์โหลด ทำการเลือก แบบ 32-bit หรือ 64-bit ก็แล้วแต่ เมื่อโหลดเสร็จจะได้ไฟล์มาประมาณนี้ xampp-linux-x64-1.8.3-4-installer.run

Change Directory ไปยังโฟลเดอร์ที่ดาวน์โหลดมา สมมติอยู่โฟลเดอร์ Downloads

Terminal window
cd ~/Downloads/

จากนั้นก็เปลี่ยนไฟล์ .run ให้เป็นแบบ executable ซะ ด้วยคำสั่ง

Terminal window
sudo chmod +x xampp-linux-x64-1.8.3-4-installer.run

จากนั้นสั่งติดตั้ง ด้วยคำสั่ง

Terminal window
sudo ./xampp-linux-x64-1.8.3-4-installer.run

จะปรากฎหน้าจอ Wizard แบบการติดตั้งบน Windows เลย ก็กด Next ไปเรื่อยๆ

Install XAMPP

Install XAMPP2

โปรแกรมจะถูกติดตั้งไว้ที่ /opt/lampp/

Install XAMPP3 Install XAMPP4 Install XAMPP5

กำลังทำการติดตั้ง Installing

ติดตั้งเสร็จเรียบร้อย

Install Completed

เมื่อติดตั้งเสร็จแล้ว ก็กด Launch XAMPP จะปรากฎหน้าตาโปรแกรมแบบนี้

Main Program

ส่วนวิธีจัดการกับ Server ก็แค่กดเข้าไปในแท็ป Manage Servers แล้วก็เลือก Start/Stop Service เอาครับ

Manage Server

โฟลเดอร์ที่ติดตั้ง XAMPP จะอยู่ที่ /opt/lampp/

หรือสะดวกใช้ CLI ก็แค่ใช้คำสั่งนี้

ทำการสั่งให้ XAMPP Start

Terminal window
sudo /opt/lampp/lampp start

จะแสดงสถานะแบบนี้ แสดงว่า OK

1
Starting XAMPP for Linux 1.8.3-4...
2
XAMPP: Starting Apache...ok.
3
XAMPP: Starting MySQL...ok.
4
XAMPP: Starting ProFTPD...ok.

ส่วนการ Stop Service ก็ใช้แค่คำสั่ง

Terminal window
sudo /opt/lampp/lampp stop

ติดตั้งแยกด้วยตัวเอง

ขั้นตอนติดตั้งแยกแบบนี้ ผมสมมติว่าผู้อ่านทุกท่านมีพื้นฐาน CLI พอสมควรนะครับ จะไม่พูดถึงรายละเอียดปลีกย่อยครับ

ติดตั้ง Apache

Terminal window
sudo apt-get update
sudo apt-get install apache2

เมื่อติดตั้งเสร็จ ทดสอบเข้าเว็บด้วย localhost หรือ 127.0.0.1 ดูครับ

พื้นที่ที่เก็บข้อมูลของเว็บ (Document Root) จะอยู่ภายในโฟลเดอร์ /var/www/html/

ส่วนวิธีการ Start/Stop Apache ก็ใช้คำสั่งดังนี้

Terminal window
sudo service apache2 start
sudo service apache2 stop
sudo service apache2 restart

ติดตั้ง MySQL

ทำการติดตั้ง MySQL ด้วยคำสั่งนี้

Terminal window
sudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql

ขณะติดตั้ง จะขึ้นหน้าต่างมาให้เราตั้งรหัสผ่านของเรา ก็กรอกลงไปครับ ยืนยันรหัสผ่านด้วย

MySQL

เมื่อติดตั้งเสร็จเรียบร้อยแล้ว ทำการ Activate ด้วยคำสั่ง

Terminal window
sudo mysql_install_db

ต่อมาก็มาสร้าง Database Directory ด้วยการสั่งรันสคริปนี้

Terminal window
sudo mysql_secure_installation

จากนั้นก็ใส่ Current Password ที่ตั้งไว้ขณะติดตั้ง MySQL ลงไป

Terminal window
Enter current password for root (enter for none):
OK, successfully used password, moving on...

จากนั้นก็จะถามเราว่า อยากจะเปลี่ยน root password หรือไม่ ใครอยากเปลี่ยนก็เลือก y ไม่เปลี่ยนก็ n ไปครับ

Terminal window
You already have a root password set, so you can safely answer 'n'.
Change the root password? [Y/n] n
... skipping.

ต้องการลบ anonymous user มั้ย เลือก y

Terminal window
Remove anonymous users? [Y/n] y
... Success!

เพื่อความปลอดภัย ห้ามให้ล็อคอินชื่อ root หรือไม่ เลือก y

Terminal window
Disallow root login remotely? [Y/n] y
... Success!

ลบข้อมูล Table ที่ใช้เทสออกซะ เลือก y

Terminal window
Remove test database and access to it? [Y/n] y
... Success!

หลักจากเปลี่ยนแปลงเรียบร้อย ก็ทำการ reload สิทธิการเข้าถึง Table ใหม่ เลือก y

Terminal window
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...

เสร็จเรียบร้อย

Terminal window
All done! If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!

ติดตั้ง PHP

ติดตั้ง PHP ด้วยคำสั่งนี้

Terminal window
sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt

หลักจากติดตั้ง PHP เสร็จ ทำการตั้งค่าให้ Web Server มันเรียกไฟล์ .php ก่อนเป็นอันดับแรก เปิดไฟล์ dir.conf

Terminal window
sudo nano /etc/apache2/mods-enabled/dir.conf

จัดการเปลี่ยนข้อมูล โดยให้ index.php มาอยู่หน้าสุดแบบนี้

1
<IfModule mod_dir.c>
2
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
3
</IfModule>

สั่ง restart service ทีนึง เป็นอันเรียบร้อย

Terminal window
sudo service apache2 restart

ส่วนวิธีการทดสอบว่า PHP รันได้หรือไม่ ก็ลองสร้างไฟล์ php มาซักไฟล์เซฟไว้ใน /var/www/html/ จากนั้น ก็เข้าเว็บด้วย localhost/yourfile.php หรือ yourdomain.com/yourfile.php ดูครับ ติดปัญหาตรงไหนสอบถามมาได้ครับ

References:

Authors
avatar

Chai Phonbopit

เป็น Web Dev ในบริษัทแห่งหนึ่ง ทำงานมา 10 ปีกว่าๆ ด้วยภาษาและเทคโนโลยี เช่น JavaScript, Node.js, React, Vue และปัจจุบันกำลังสนใจในเรื่องของ Blockchain และ Crypto กำลังหัดเรียนภาษา Rust

Related Posts