นำเว็บ Laravel / PHP ขึ้นออนไลน์ด้วย AI ให้ผ่านในรอบเดียว

BrewInTH ทำอะไรให้ Laravel อัตโนมัติ ต้องตั้ง APP_KEY, DB_* และ migrate ยังไง พร้อม prompt ให้ AI deploy เว็บ Laravel หรือ PHP ผ่านในรอบเดียว
Laravel เป็น framework PHP ที่ AI เขียนได้คล่องมาก สั่งให้ทำระบบสมาชิก ระบบหลังบ้าน หรือร้านค้าเล็ก ๆ ได้ในเวลาไม่นาน แต่พอถึงขั้นนำขึ้นเว็บจริง มักติดเรื่องเดิม ๆ เช่น APP_KEY หาย ฐานข้อมูลเชื่อมไม่ติด ยังไม่ได้ migrate หน้าเว็บขึ้น error 500 หรืออัปโหลดรูปไม่ได้
บทความนี้สรุปว่า BrewInTH จัดการอะไรให้ Laravel และ PHP อัตโนมัติแล้ว เจ้าของโปรเจกต์ต้องบอก AI อะไรบ้าง พร้อม prompt ที่ใช้ได้ทันที เพื่อให้ deploy ผ่านในรอบเดียว
สรุปสั้นก่อนอ่าน
✅ เลือกเทคโนโลยี Laravel (PHP) หรือ ให้ระบบเลือกให้ ระบบเห็นcomposer.jsonแล้วรู้เอง
✅ ไม่ต้องอัปโหลดvendor/และ.envระบบรัน composer ให้ตอน build ส่วนค่าลับเก็บใน ค่าตั้งแอป
✅ ตั้ง คำสั่งก่อนเผยแพร่ เป็นphp artisan migrate --forceให้ migrate ก่อนเปิดเวอร์ชันใหม่
✅ Laravel 11 ขึ้นไป ระบบตรวจความพร้อมที่/upให้เอง
✅ ขนาดอัปโหลดไฟล์ตามแพ็กเกจ: ฟรี 20 MB, แบบชำระเงิน 100 MB
BrewInTH ทำอะไรให้ Laravel อัตโนมัติบ้าง

- ตรวจเทคโนโลยีจากโค้ด ถ้าเลือก ให้ระบบเลือกให้ (แนะนำ) ระบบเห็น
composer.jsonแล้วจัดเป็น PHP/Laravel และล็อกไว้ตั้งแต่เวอร์ชันแรก - ติดตั้ง package ตอน build AI ส่งแค่
composer.jsonกับcomposer.lockไม่ต้องส่งโฟลเดอร์vendor/ - เปิดเว็บจากโฟลเดอร์
public/ไฟล์ส่วนอื่นของโปรเจกต์จึงไม่เปิดให้คนภายนอกเห็น - ตรวจความพร้อมที่
/upสำหรับ Laravel 11 ขึ้นไป (route ที่ Laravel สร้างมาให้) เวอร์ชันใหม่จะเปิดให้ผู้ใช้เห็นเมื่อตอบได้แล้วเท่านั้น - ให้
storage/และbootstrap/cacheเขียนได้ ทั้งตอนเว็บทำงานและตอนรันคำสั่ง artisan - ตั้ง php.ini ตามแพ็กเกจ อัปโหลดไฟล์ได้ครั้งละ 20 MB ในแพ็กเกจฟรี และ 100 MB ในแพ็กเกจแบบชำระเงิน (ค่าเริ่มต้นของ PHP คือ 2 MB)
- ใส่ค่าเชื่อมต่อฐานข้อมูลให้ เมื่อฐานข้อมูลพร้อม ระบบเขียน
DATABASE_URL(PostgreSQL) หรือMYSQL_URL(MySQL/MariaDB) ลงในค่าตั้งแอป
ส่วนที่ต้องบอก AI ให้ครบ
AI ที่อ่านคู่มือของ BrewInTH รู้ขั้นตอนเหล่านี้อยู่แล้ว แต่การระบุใน prompt ช่วยให้ไม่พลาด

1. ค่าตั้งแอปของ Laravel
Laravel อ่านค่าจาก .env แต่บนเว็บจริงไม่ควรอัปโหลดไฟล์นี้ ให้ AI ใส่ค่าเหล่านี้ใน ค่าตั้งแอป ของโปรเจกต์แทน
APP_KEYแบบbase64:…สร้างครั้งเดียวแล้วใช้ตลอด ห้ามสร้างใหม่ ไม่งั้น session และข้อมูลที่เข้ารหัสไว้จะใช้ไม่ได้APP_ENV=productionและAPP_DEBUG=falseไม่ให้หน้า error แสดงข้อมูลภายในต่อคนทั่วไปAPP_URLเป็นที่อยู่เว็บจริงLOG_CHANNEL=stderrให้ log ของ Laravel ไปอยู่ใน บันทึกการทำงาน ของโปรเจกต์- ค่าฐานข้อมูลที่ Laravel อ่าน
DB_CONNECTION,DB_HOST,DB_PORT,DB_DATABASE,DB_USERNAME,DB_PASSWORDAI ดึงจากข้อมูลเชื่อมต่อของฐานข้อมูลโปรเจกต์ได้ SESSION_DRIVERและCACHE_STOREใช้databaseหรือfileได้ ถ้าเพิ่ม Redis ให้โปรเจกต์ไว้ ใช้redisได้เลย
2. migrate ด้วยคำสั่งก่อนเผยแพร่
BrewInTH มีช่อง คำสั่งก่อนเผยแพร่ (release command) อยู่ใน ตัวเลือกขั้นสูง (build / start / port) ของหน้าเผยแพร่ หรือ AI ตั้งให้ตอน deploy ได้ ตั้งเป็น
php artisan migrate --force
คำสั่งนี้รันจากเวอร์ชันใหม่ ก่อน สลับให้ผู้ใช้เห็น ถ้า migrate ไม่ผ่าน การเผยแพร่นั้นจะล้มเหลว และเว็บเวอร์ชันเดิมยังเปิดได้ตามปกติ ผลลัพธ์ของคำสั่งอยู่ใน log ของการเผยแพร่ครั้งนั้น ขึ้นต้นด้วย [release command]
3. ไฟล์ที่ผู้ใช้อัปโหลด
ไฟล์ที่แอปเขียนลงดิสก์ปกติจะหายเมื่อเผยแพร่เวอร์ชันใหม่ ถ้าเว็บให้ผู้ใช้อัปโหลดรูปหรือเอกสาร ให้เปิด พื้นที่เก็บไฟล์ถาวร (/data) แล้วให้ Laravel เก็บไฟล์ไว้ใต้ /data ขนาดพื้นที่นี้นับรวมกับพื้นที่ของแพ็กเกจ และเมื่อเปิดพื้นที่ถาวรแล้ว การเผยแพร่เวอร์ชันใหม่จะมีช่วงหยุดสั้น ๆ เพราะเวอร์ชันเก่าต้องปล่อยดิสก์ก่อน
4. คิวงานและงานตามเวลา
ถ้าแอปใช้ queue เช่น ส่งอีเมลเบื้องหลัง ให้ตั้ง งานตามเวลา (cron) รัน php artisan queue:work --stop-when-empty ทุกไม่กี่นาที (รอบถี่สุดคือทุก 5 นาที) งาน artisan อื่นที่ต้องทำเป็นประจำก็ตั้งเป็นงานตามเวลาแยกกันได้ โปรเจกต์หนึ่งมีได้สูงสุด 10 รายการ
Prompt ให้ AI deploy Laravel ในรอบเดียว
เปิด AI บนคอมพิวเตอร์ในโฟลเดอร์โปรเจกต์ Laravel วางข้อความสำเร็จรูปจาก BrewInTH แล้วต่อด้วย prompt นี้
(วางข้อความสำเร็จรูปจาก BrewInTH ตรงนี้)
นี่คือโปรเจกต์ Laravel ช่วย deploy ขึ้น BrewInTH ให้ผ่านในรอบเดียว ตามหัวข้อ Laravel ในคู่มือ
- ZIP ไม่รวม vendor/, .env และ .git
- ตั้งค่าตั้งแอปทีเดียวให้ครบ: APP_KEY (ถ้ามีอยู่แล้วใช้ค่าเดิม), APP_ENV=production,
APP_DEBUG=false, APP_URL, LOG_CHANNEL=stderr และ DB_* จากฐานข้อมูลของโปรเจกต์
- ตั้งคำสั่งก่อนเผยแพร่เป็น php artisan migrate --force
- ถ้าแอปมีอัปโหลดไฟล์ ให้เปิดพื้นที่ถาวรและเก็บไฟล์ไว้ใต้ /data
- deploy เสร็จแล้วเปิดเว็บจริงตรวจหน้าแรกและหน้า login แล้วสรุปลิงก์ให้
ถ้าไม่ผ่าน อ่าน log การเผยแพร่ แก้ แล้วลองใหม่จนสำเร็จ
ยังไม่มีโค้ดเลย? สั่ง AI สร้างโปรเจกต์ Laravel ใหม่ในเครื่อง ทดสอบให้ผ่านก่อน แล้วค่อยใช้ prompt ด้านบน ส่วนการเลือกฐานข้อมูล PostgreSQL หรือ MySQL อ่านเพิ่มได้ใน บทความเลือกฐานข้อมูล
เว็บ PHP ธรรมดาที่ไม่ใช้ Laravel
เลือกเทคโนโลยี PHP (หรือให้ระบบเลือกให้) ใช้ได้กับเว็บที่เขียน PHP ตรง ๆ หรือ framework อื่น
- ถ้ามี
composer.jsonระบบติดตั้ง package ให้ตอน build เหมือน Laravel - เว็บที่ไม่มีหน้าแรกตอบกลับได้เร็ว (เช่น API) ให้ตั้ง Path ตรวจความพร้อม ใน ตัวเลือกขั้นสูง เป็น route ที่ตอบ 200 เช่น
/health - ค่าเชื่อมต่อฐานข้อมูลอ่านจาก
DATABASE_URLหรือMYSQL_URLใน environment ห้ามเขียนรหัสผ่านไว้ในไฟล์ PHP - ขนาดอัปโหลดไฟล์เป็นไปตามแพ็กเกจเหมือนกัน (ฟรี 20 MB, แบบชำระเงิน 100 MB)
deploy ไม่ผ่าน ดูตรงไหน
เปิดโปรเจกต์ แล้วดูประวัติการเผยแพร่ รายการล่าสุดที่ล้มเหลวจะเปิด log ให้เอง มองหาบรรทัดเหล่านี้ หรือคัดลอก log ส่งให้ AI อ่านเลยก็ได้
[release command]ผลของmigrateเช่น ตารางซ้ำ เชื่อมฐานข้อมูลไม่ได้ เพราะค่าDB_*ผิด[readiness]ผลการตรวจความพร้อม เช่น/upตอบ 500 ซึ่งมักเกิดจากAPP_KEYว่าง หรือstorageเขียนไม่ได้- error ตอน build เช่น
composer installไม่ผ่านเพราะcomposer.lockไม่ตรงกับcomposer.json
ดูวิดีโอประกอบ
▶ ตัวอย่างตั้งแต่สร้างโปรเจกต์จนเปิดเว็บ (1:30 นาที)
ดูบน YouTube
คำถามที่พบบ่อย
ต้องอัปโหลดโฟลเดอร์ vendor ไหม
ไม่ต้อง และไม่ควร ระบบรัน composer ติดตั้งให้ตอน build จาก composer.lock ยกเว้นไฟล์ที่ publish ไว้ใน public/vendor/ (เช่นของ Livewire) ให้ส่งไปด้วยตามปกติ
ใช้ MySQL หรือ PostgreSQL กับ Laravel ดี
ได้ทั้งคู่ ถ้าโปรเจกต์เดิมตั้งเป็น mysql ใช้ MySQL หรือ MariaDB จะง่ายที่สุด ถ้าเริ่มใหม่ PostgreSQL ก็ใช้ได้ดี
รู้ได้ยังไงว่าเว็บใช้ PHP เวอร์ชันไหน
หลัง build ระบบบันทึกเวอร์ชัน PHP, extension ที่โหลด และเวอร์ชัน Laravel ไว้กับการเผยแพร่แต่ละครั้ง ถาม AI ให้ดูจากข้อมูลโปรเจกต์ได้
อัปโหลดไฟล์ใหญ่กว่า 100 MB ได้ไหม
ตอนนี้ขนาดต่อคำขอสูงสุดคือ 100 MB ในแพ็กเกจแบบชำระเงิน ไฟล์ใหญ่กว่านั้นควรให้แอปแบ่งอัปโหลดเป็นส่วน ๆ
แก้เว็บแล้วจะอัปเดตยังไง
คุยต่อในแชตเดิมแล้วสั่ง deploy ใหม่ คำสั่งก่อนเผยแพร่จะ migrate ให้ทุกครั้ง ถ้า token หมดอายุ กดปุ่มสร้างลิงก์และ token ใหม่ในหน้าโปรเจกต์
สรุป
Laravel บน BrewInTH ไม่ต้องตั้ง server เอง ระบบติดตั้ง package ตรวจ /up จัด php.ini และใส่ค่าฐานข้อมูลให้ ส่วนที่ต้องบอก AI ให้ครบคือค่าตั้งแอป คำสั่งก่อนเผยแพร่ migrate --force และที่เก็บไฟล์ถาวร ใช้ prompt ในบทความนี้ แล้วเว็บ Laravel ของคุณจะออนไลน์ได้ในรอบเดียว
