📥 วิธีดาวน์โหลด Source Code

หากคุณต้องการดึงไฟล์โปรเจกต์ทั้งหมด (ทั้งแอป 51888 และ 52999) ไปเก็บไว้ที่เครื่องส่วนตัว (เช่นในมือถือผ่าน Termux หรือคอมพิวเตอร์) คุณสามารถใช้คำสั่ง rsync ผ่าน SSH ได้ครับ

💻 คำสั่งสำหรับรันบนเครื่องของคุณ (Local Machine)

เปิด Terminal บนเครื่องของคุณ แล้วคัดลอกคำสั่งด้านล่างไปวางรันได้เลย (อย่าลืมเปลี่ยน your_username และ /path/to/... ให้ตรงกับเซิร์ฟเวอร์ของคุณ):

rsync -avzP your_username@172.18.0.5:"/path/to/todolist /path/to/admin_app" ~/

คำอธิบายตัวย่อ (Flags)

หมายเหตุ: เมื่อรันคำสั่งเสร็จสิ้น โฟลเดอร์ todolist และ admin_app จะไปปรากฏอยู่ที่หน้า Home (~/) ของเครื่องคุณครับ


🚀 วิธีติดตั้งระบบบนเซิร์ฟเวอร์ใหม่ (Setup Guide)

เมื่อคุณคัดลอกไฟล์ไปยังเซิร์ฟเวอร์ใหม่แล้ว ให้ทำตามขั้นตอนต่อไปนี้เพื่อให้ระบบทำงานได้สมบูรณ์:

1. ติดตั้งโปรแกรมที่จำเป็น

คุณต้องมี PHP และฐานข้อมูล MySQL/MariaDB ติดตั้งอยู่ในเครื่อง:

sudo apt update
sudo apt install php php-mysql php-cli mariadb-server

2. นำเข้าฐานข้อมูล (Database)

ระบบใช้ MySQL ดังนั้นคุณต้องสร้างฐานข้อมูลและนำเข้าโครงสร้างตาราง:

# 1. เข้าสู่ MariaDB
sudo mysql -u root

# 2. สร้างฐานข้อมูลและผู้ใช้งาน
CREATE DATABASE todolist_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'todolist_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON todolist_db.* TO 'todolist_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

# 3. นำเข้าไฟล์ฐานข้อมูลเดิม
mysql -u todolist_user -p todolist_db < /path/to/todolist/database_export.sql

*อย่าลืมเข้าไปแก้ไฟล์ /path/to/todolist/api.php และ /path/to/admin_app/api.php ตรงส่วนเชื่อมต่อฐานข้อมูลให้ตรงกับรหัสผ่านใหม่ที่คุณตั้งไว้ด้วยครับ

3. รันเซิร์ฟเวอร์ PHP

คุณสามารถใช้คำสั่ง PHP Built-in Server ควบคู่กับ tmux หรือ screen เพื่อให้เซิร์ฟเวอร์ทำงานตลอดเวลาในแบ็คกราวด์:

# รันแอปกระดานงาน (พอร์ต 51888)
cd /path/to/todolist
php -S 0.0.0.0:51888

# รันแอปหลังบ้าน (พอร์ต 52999) เปิดอีกหน้าต่างใน tmux
cd /path/to/admin_app
php -S 0.0.0.0:52999

4. ตั้งค่า Firewall (Ubuntu UFW)

หากเครื่องเซิร์ฟเวอร์ของคุณมีการใช้งาน Firewall (ufw) คุณต้องเปิดพอร์ตเพื่อให้คนอื่นเข้ามาใช้งานแอปได้:

# 1. อนุญาตพอร์ตที่สำคัญ (ห้ามลืมเปิด SSH เด็ดขาด)
sudo ufw allow 22/tcp      # พอร์ตเชื่อมต่อ SSH
sudo ufw allow 51888/tcp   # พอร์ตสำหรับแอปกระดานงาน
sudo ufw allow 52999/tcp   # พอร์ตสำหรับแอปหลังบ้าน (Admin)

# 2. เปิดใช้งาน Firewall
sudo ufw enable

# 3. ตรวจสอบสถานะว่าพอร์ตเปิดเรียบร้อยหรือไม่
sudo ufw status
⬅️ กลับหน้า Admin Dashboard