คู่มือ VPS Laravel & PHP

VPS Laravel PHP 2026 — Deploy Laravel บน VPS ด้วย Nginx PHP-FPM

คู่มือเช่า VPS สำหรับ Laravel และ PHP 8 ติดตั้ง LEMP Nginx PHP-FPM Queue Worker Redis Composer Deploy เปรียบเทียบกับ Shared Hosting และวิธีเริ่มบน Vpskub

อัปเดต 8 กรกฎาคม 2569อ่านประมาณ 16 นาที
vps laravelเช่า vps phpvps สำหรับ laraveldeploy laravel บน vpsvps php 8

ทำไม Laravel บน Shared Hosting มักไม่พอ — ต้องเช่า VPS PHP

Laravel เป็น Framework PHP ที่ทีมพัฒนาไทยนิยมใช้สร้างระบบจอง ค้าขาย SaaS และ API ภายในองค์กร ความสามารถด้าน Queue, Scheduler, Event และโครงสร้างโค้ดที่ชัดเจนทำให้โปรเจกต์โตได้เร็ว แต่ก็ต้องการสภาพแวดล้อมเซิร์ฟเวอร์ที่ยืดหยุ่นกว่าโฮสติ้งสำเร็จรูป

Shared Hosting มักล็อกเวอร์ชัน PHP, จำกัด SSH, ปิด Supervisor และไม่อนุญาตให้รัน Queue Worker ยาวๆ ทำให้ฟีเจอร์สำคัญของ Laravel ทำงานได้ไม่ครบหรือต้องพึ่ง Cron แบบคร่าวๆ ซึ่งไม่เหมาะกับงาน Production จริง

การเช่า VPS สำหรับ Laravel ให้คุณเลือก PHP 8.x ติดตั้งส่วนขยายที่โปรเจกต์ต้องการ ตั้งค่า Nginx PHP-FPM เอง และรันหลายบริการคู่กัน เช่น Redis MySQL Meilisearch บนเครื่องเดียวในช่วงเริ่มต้น

โฮสต์ Laravel ราคาถูกบน VPS ไม่ได้หมายถึงตัดคุณภาพ แต่หมายถึงเลือกสเปกพอดี เริ่มรายวันเพื่อทดสอบ Deploy แล้วขยายรายเดือนเมื่อระบบมีผู้ใช้จริง ซึ่งเป็นแนวทางที่ทีม SME ไทยใช้กันกว้างขวาง

เมื่อเทียบกับ Managed Laravel Hosting ต่างประเทศที่คิดราคาสูงเป็นดอลลาร์ VPS ไทยช่วยคุมงบและได้ Latency ดีต่อผู้ใช้ในประเทศ โดยเฉพาะระบบที่ลูกค้าเข้าใช้หนาแน่นในชั่วโมงเร่งด่วน

วาง LEMP Stack สำหรับ VPS Laravel — Linux Nginx MySQL PHP

สแตกมาตรฐานที่แนะนำคือ LEMP ได้แก่ Linux, Nginx, MySQL หรือ MariaDB และ PHP-FPM เหมาะกับ Laravel มากกว่า LAMP ที่ใช้ Apache ในหลายกรณี เพราะ Nginx จัดการ Static File และ Reverse Proxy ได้เบาและเร็ว

เริ่มจากอัปเดตระบบ Ubuntu LTS ติดตั้ง Nginx และสร้าง Server Block ชี้ Document Root ไปที่โฟลเดอร์ public ของโปรเจกต์ Laravel ไม่ใช่ root โปรเจกต์ทั้งก้อน เพื่อไม่เปิดไฟล์ .env ให้สาธารณะ

ติดตั้ง PHP 8 พร้อมส่วนขยายจำเป็น เช่น mbstring, xml, curl, zip, mysql, redis, gd หรือ imagick ตามที่แอปใช้ จากนั้นตั้งค่า PHP-FPM Pool ให้มี pm.max_children เหมาะสมกับ RAM ของ VPS

สร้างฐานข้อมูลและผู้ใช้เฉพาะโปรเจกต์ กำหนดรหัสผ่านแข็งแรง และอนุญาตเชื่อมต่อจาก localhost เป็นหลัก ลดความเสี่ยงจากภายนอกที่พยายามเดารหัสผ่าน MySQL

ตรวจสอบสิทธิ์โฟลเดอร์ storage และ bootstrap/cache ให้ Web Server เขียนได้ การลืมขั้นตอนนี้เป็นสาเหตุยอดฮิตที่ Deploy แล้วเจอ 500 ทันที

  • Document Root = โฟลเดอร์ public เท่านั้น
  • PHP 8.x + ส่วนที่ Laravel ต้องการ
  • MySQL/MariaDB แยก User ตามโปรเจกต์
  • ตั้งสิทธิ์ storage และ bootstrap/cache ให้ถูกต้อง

ตั้งค่า Nginx และ PHP-FPM ให้ Laravel เร็วและเสถียร

ใน Server Block ของ Nginx ตั้ง try_files ให้ส่ง request ที่ไม่ใช่ไฟล์จริงเข้า index.php ตามที่ Laravel ต้องการ พร้อมปิดการเข้าถึงไฟล์แฝงและโฟลเดอร์ที่ไม่ควรเปิดสาธารณะ

PHP-FPM คือตัวประมวลผล PHP แยก Process ทำงานกับ Nginx ผ่าน Socket หรือพอร์ต การจูน pm เป็น dynamic หรือ ondemand บนเครื่อง RAM น้อยช่วยลดการใช้หน่วยความจำตอนกลางดึกที่ทราฟฟิกต่ำ

เปิด OPcache สำหรับ PHP 8 เพื่อให้โค้ดที่ Compile แล้วถูกเก็บในหน่วยความจำ ลดเวลาตอบสนองของหน้า Dashboard และ API ที่ถูกเรียกซ้ำบ่อย

ปรับ upload_max_filesize และ post_max_size ให้สอดคล้องกับฟีเจอร์อัปโหลดของแอป แต่ไม่เปิดกว้างเกินจำเป็นเพื่อลดความเสี่ยง

ใช้ HTTPS ด้วย Let's Encrypt และบังคับ Redirect จาก HTTP ไป HTTPS ใน Nginx เพื่อปกป้อง Cookie Session ของผู้ใช้ Laravel

เครื่อง RAM 2 GB อย่าตั้ง pm.max_children สูงเกินไปจน RAM เต็มแล้ว Swap หนัก ดีกว่าจำกัดพร้อมกันน้อยลงแต่เสถียร แล้วค่อยอัปเกรดสเปกเมื่อมีทราฟฟิกจริง

Deploy Laravel บน VPS ด้วย Composer และ Git

ติดตั้ง Composer ระดับโกลบอลบน VPS แล้ว Clone โค้ดจาก Git Repository สร้างไฟล์ .env จากตัวอย่าง ตั้งค่า APP_KEY ด้วย php artisan key:generate และใส่ค่าการเชื่อมต่อฐานข้อมูล Redis คิว และเมล

รัน composer install --no-dev --optimize-autoloader สำหรับ Production จากนั้น php artisan config:cache route:cache และ view:cache เพื่อลดเวลา Bootstrap ในแต่ละ Request

Build Frontend Assets ด้วย npm ci และ npm run build หากโปรเจกต์ใช้ Vite แล้วจัดไฟล์สาธารณะให้อยู่ใต้ public/build ตามที่ Laravel คาดหวัง

สร้างสคริปต์ Deploy ที่ทำ git pull, composer install, migrate --force, cache ใหม่ และ reload PHP-FPM เพื่อให้ทีมอัปเดตซ้ำได้เหมือนกันทุกครั้ง ลด Human Error

หลีกเลี่ยงการพัฒนาบนเครื่อง Production โดยตรง ใช้สาขา main หรือ production เป็นแหล่ง Deploy เดียว และเก็บ Secret ไว้นอก Git เสมอ

Queue Worker Redis และ Scheduler บน VPS

จุดแข็งของ Laravel คือการแบ่งงานหนักออกจาก Request ปกติ เช่น ส่งอีเมล สร้างรายงาน หรือยิง API ภายนอก ควรรันผ่าน Queue แทนที่จะทำใน Controllers โดยตรง

ติดตั้ง Redis บน VPS ตั้ง QUEUE_CONNECTION=redis ใน .env แล้วรัน php artisan queue:work ภายใต้ Supervisor หรือ systemd เพื่อให้ Worker กลับมาเองเมื่อ Process ตายหรือเครื่องรีบูต

เพิ่ม Cron บรรทัดเดียวเรียก php artisan schedule:run ทุกนาที ตามที่เอกสาร Laravel แนะนำ เพื่อให้ Scheduled Command ทำงานตรงเวลา เช่น สรุปรายวันหรือล้างข้อมูลชั่วคราว

แยก Queue ตามความสำคัญ เช่น อีเมล กับงานประมวลผลไฟล์หนัก เพื่อไม่ให้งานยาวมาบล็อกงานสั้น และมอนิเตอร์ Failed Job เป็นประจำ

เมื่อ Worker กิน CPU สูงต่อเนื่อง อาจถึงเวลาอัปเกรด vCPU หรือแยกเครื่อง Worker ออกจากเครื่อง Web เพื่อไม่ให้หน้าเว็บช้าตาม

  • Redis — Cache และ Queue Backend ยอดนิยม
  • Supervisor/systemd — คุม Worker ให้ไม่ดับเงียบ
  • Scheduler — Cron เรียก artisan ทุกนาที
  • แยกคิวงานสั้น/ยาว เพื่อเสถียรภาพ

เปรียบเทียบ VPS Laravel กับ Shared Hosting

Shared Hosting เหมาะกับเว็บ PHP เล็กที่ใช้แค่หน้าเว็บและฟอร์มง่ายๆ แต่เมื่อโปรเจกต์เป็น Laravel จริงจัง ข้อจำกัดด้าน Process, เวอร์ชัน PHP และสิทธิ์ SSH จะเริ่มฉุดรั้งทีมพัฒนา

บน VPS คุณควบคุมการอัปเดตความปลอดภัย เวอร์ชัน dependency และสถาปัตยกรรมได้เอง แลกกับการต้องดูแล Backup Firewall และ Monitor ด้วยตัวเองหรือทีมซัพพอร์ตช่วย

ด้านราคา Shared ถูกกว่าในป้ายราคา แต่ต้นทุนแฝงคือเวลา Debug เมื่อโฮสติ้งจำกัดฟังก์ชัน หรือเว็บช้าเพราะเพื่อนบ้านกินทรัพยากร VPS ให้ประสิทธิภาพคาดการณ์ได้กว่า

เส้นทางที่แนะนำคือพัฒนาบนเครื่องท้องถิ่น ใช้ VPS Staging รายวันหรือรายสัปดาห์ แล้ว Production รายเดือน เมื่อโตค่อยแยก Database หรือเพิ่มเครื่อง ไม่จำเป็นต้องกระโดดไป Dedicated ทันที

หากโปรเจกต์ต้องเชื่อมต่อ Payment Gateway, LINE OA หรือระบบบัญชีบริษัท ข้อได้เปรียบของ VPS คือเปิดพอร์ตและตั้งค่า SSL รวมถึง Worker พื้นหลังได้ครบ ทำให้ Integration ไม่ต้องยัดลงในข้อจำกัดของ cPanel

ความปลอดภัย Backup และ Checklist ก่อนเปิดจริง

ปิด Debug โหมดใน Production ตั้ง APP_ENV=production และ APP_DEBUG=false มิฉะนั้น Stack Trace อาจเปิดเผยเส้นทางไฟล์และค่าคอนฟิกเมื่อเกิด Error

ใช้ Firewall เปิดเฉพาะพอร์ตจำเป็น อัปเดตแพ็กเกจสม่ำเสมอ และจำกัดการ Login SSH ด้วยคีย์ หมุนเวียนรหัสฐานข้อมูลเมื่อมีคนออกจากทีม

สำรองทั้งไฟล์โปรเจกต์และ Dump ฐานข้อมูลอัตโนมัติรายวัน ทดสอบ Restore เป็นครั้งคราว โดยเฉพาะก่อน Migrate ใหญ่

ตั้ง Rate Limiting ใน Laravel และชั้น Nginx สำหรับ Endpoint Login และ API สาธารณะ ลดความเสี่ยง Brute Force และ Scraping

ตรวจสิทธิ์ไฟล์ .env หลัง Deploy ทุกครั้ง และอย่าเปิดโฟลเดอร์ vendor หรือ storage ดิบผ่าน URL การสแกนช่องโหว่เบื้องต้นด้วยเครื่องมือง่ายๆ หลังเปิดโดเมนช่วยจับการตั้งค่าผิดพลาดได้ก่อนผู้ใช้จริงเข้ามา

ทำไมทีม Laravel ไทยเลือก Vpskub

Vpskub ให้บริการ VPS SSD เปิดเครื่องอัตโนมัติหลังชำระเงิน ทีมสามารถติดตั้ง LEMP, PHP 8 และ Deploy Laravel ได้ทันทีโดยไม่รอคิว

เลือกรอบบิลรายวัน รายสัปดาห์ หรือรายเดือนได้ตามระยะโปรเจกต์ เติมเงินผ่าน PromptPay ตรวจสลิปอัตโนมัติ เหมาะทั้ง Staging สั้นๆ และ Production ยาว

เมื่อทราฟฟิกหรือ Queue โตขึ้น อัปเกรด vCPU และ RAM จากแดชบอร์ดได้โดยลดการย้ายเครื่อง ช่วยให้ขยายระบบเป็นขั้นๆ

ซัพพอร์ตภาษาไทย 24/7 ช่วยเรื่องการเข้าใช้งานเครือข่ายและพื้นฐานเซิร์ฟเวอร์ ให้ Developer โฟกัสที่โค้ด Laravel ที่ vpskub.com

ทีมที่รับงานลูกค้าหลายโปรเจกต์สามารถเปิด VPS คนละเครื่องต่อลูกค้า แยก .env และฐานข้อมูลชัดเจน ลดความเสี่ยงข้อมูลปนกัน และคิดต้นทุนต่อโปรเจกต์ได้โปร่งใสมากกว่าโฮสติ้งแชร์บัญชีเดียว

สรุป — Deploy Laravel บน VPS อย่างมั่นใจ

VPS สำหรับ Laravel คือสภาพแวดล้อมที่ปลดล็อก PHP 8, Nginx PHP-FPM, Redis Queue และ Composer Deploy ได้ครบแบบที่ Shared Hosting ทำได้ยาก เมื่อวางสแตกและกระบวนการอัปเดตเป็นระบบ เว็บจะเสถียรและขยายได้ตามธุรกิจ

เริ่มต้นที่ Vpskub ด้วย VPS SSD เปิดอัตโนมัติ ชำระ PromptPay ซัพพอร์ตไทย 24/7 เช่ารายวันถึงรายเดือนได้ที่ vpskub.com แล้วส่ง Laravel ขึ้น Production ด้วยมาตรฐานที่ทีมควบคุมได้เอง

ให้ความสำคัญกับสิทธิ์โฟลเดอร์ การแคชคอนฟิก Worker ที่ไม่ดับ และ Backup รายวัน เท่านี้คุณก็มีรากฐานโฮสต์ Laravel ที่พร้อมโตไปกับจำนวนผู้ใช้โดยไม่ต้องย้ายแพลตฟอร์มทุกไตรมาส

คำถามที่พบบ่อย

Deploy Laravel บน VPS ต้องใช้สเปกเริ่มต้นเท่าไหร่?

โปรเจกต์เล็กถึงกลางมักเริ่มที่ vCPU 1–2 และ RAM 2–4 GB หากรัน Queue Worker กับ Redis MySQL บนเครื่องเดียวกัน แนะนำ RAM 4 GB ขึ้นไปและอัปเกรดเมื่อ Monitor ขึ้นค่าสูงต่อเนื่อง

ทำไมต้องใช้ Nginx PHP-FPM กับ Laravel?

Nginx ส่งไฟล์ Static ได้เร็วและทำงานคู่ PHP-FPM ได้อย่างมีประสิทธิภาพ การชี้ Document Root ไปที่ public พร้อม PHP 8 และ OPcache เป็นมาตรฐานที่ทีม Laravel ส่วนใหญ่ใช้บน VPS

Shared Hosting รัน Laravel Queue ได้ดีไหม?

ส่วนใหญ่ทำได้ไม่เต็มที่เพราะจำกัด Process ยาวๆ และ Supervisor การเช่า VPS PHP จึงเหมาะกว่าเมื่อต้องใช้ Queue Scheduler และ Redis จริงจัง

Vpskub รองรับโฮสต์ Laravel ราคาถูกแบบรายวันไหม?

รองรับ เลือกรายวัน รายสัปดาห์ หรือรายเดือนได้ ใช้ VPS SSD เปิดอัตโนมัติ เติม PromptPay และติดต่อซัพพอร์ตภาษาไทย 24/7 ได้ที่ vpskub.com

พร้อมเริ่มใช้ VPS แล้ว?

สมัครสมาชิก เปิดเครื่องอัตโนมัติ และเลือกแพ็กเกจได้ทันที