พฤษภาคม 23, 2026คู่มือ
วิธีย้ายเว็บไซต์ไปยัง VPS ใหม่
คู่มือการย้ายครบถ้วน: backup ไฟล์และฐานข้อมูล โอนไปยัง VPS Hiddence อัปเดต DNS และตรวจสอบเว็บไซต์

การย้ายเว็บไซต์ไปยัง VPS ใหม่ — ไม่ว่าจาก shared hosting หรือเซิร์ฟเวอร์เก่า — ต้องคัดลอกไฟล์ ฐานข้อมูล และอัปเดต DNS ทำตาม checklist นี้เพื่อลด downtime บนเซิร์ฟเวอร์ Hiddence
ก่อนเริ่มต้น
- จัดเตรียม VPS ใหม่ด้วย OS/PHP/MySQL เวอร์ชันเดียวกันหรือใหม่กว่า
- ติดตั้ง web stack (Nginx/Apache, PHP, MySQL/MariaDB)
- บันทึก TTL DNS ปัจจุบันและลดเป็น 300 หนึ่งวันก่อนย้าย
- สร้าง backup เต็มรูปแบบของเซิร์ฟเวอร์เก่า
- แจ้งผู้ใช้เกี่ยวกับหน้าต่าง maintenance สั้นๆ ที่อาจเกิดขึ้น
ขั้นตอนที่ 1: Backup ไฟล์เว็บไซต์
บนเซิร์ฟเวอร์เก่า บีบอัดไดเรกทอรีเว็บไซต์:
bash
cd /var/www
tar -czvf website-backup.tar.gz yoursite/
# Download to your computer:
scp user@old-server:/var/www/website-backup.tar.gz .ขั้นตอนที่ 2: อัปโหลดไปยัง VPS ใหม่
คัดลอก archive ไปยังเซิร์ฟเวอร์ Hiddence และแตกไฟล์:
bash
scp website-backup.tar.gz root@NEW_VPS_IP:/var/www/
ssh root@NEW_VPS_IP
cd /var/www
tar -xzvf website-backup.tar.gz
chown -R www-data:www-data yoursite/ขั้นตอนที่ 3: ย้ายฐานข้อมูล MySQL
Export บนเซิร์ฟเวอร์เก่า import บนเซิร์ฟเวอร์ใหม่:
bash
# On old server:
mysqldump -u root -p database_name > db.sql
# Copy and import on new VPS:
scp db.sql root@NEW_VPS_IP:/tmp/
mysql -u root -p -e "CREATE DATABASE database_name;"
mysql -u root -p database_name < /tmp/db.sql
# Update wp-config.php or app .env with new DB credentials if neededขั้นตอนที่ 4: เปลี่ยน DNS
เมื่อเว็บไซต์ทำงานบน IP ใหม่ (ทดสอบผ่าน /etc/hosts หรือ URL ชั่วคราว) อัปเดต A record ของ DNS ไปยัง IP VPS ใหม่ รอ propagate และตรวจสอบ:
- เว็บไซต์เปิดบนโดเมนโดยไม่มี error
- ใบรับรอง HTTPS ถูกต้อง (ออก Certbot ใหม่หากจำเป็น)
- ฟอร์มและ login ทำงาน (การเชื่อมต่อฐานข้อมูล OK)
- Cron jobs และการส่งอีเมลทำงาน
- เปิดเซิร์ฟเวอร์เก่าออนไลน์ 24–48 ชั่วโมงเป็น fallback
เคล็ดลับการย้าย
- ใช้ rsync สำหรับเว็บไซต์ขนาดใหญ่: rsync -avz old:/var/www/site/ new:/var/www/site/
- จับคู่เวอร์ชัน PHP เพื่อหลีกเลี่ยงปัญหาความเข้ากันได้
- ทดสอบด้วยไฟล์ hosts: echo "NEW_IP yourdomain.com" >> /etc/hosts
- ล้าง cache Redis/Memcached หลังย้าย
- รัน search-replace URL ใน WordPress หากโดเมนเปลี่ยน