เมื่อเว็บไซต์ WordPress เติบโตจน Shared Hosting ไม่เพียงพอ การย้ายมา Cloud VPS คือทางออกที่ดีที่สุด บทความนี้จะแนะนำขั้นตอนการย้าย WordPress จาก Shared Hosting มายัง Cloud VPS ของ de.co.th โดยไม่สูญเสียข้อมูลและรักษาอันดับ SEO เดิมไว้
ทำไมต้องย้ายจาก Shared Hosting มา Cloud VPS?
Shared Hosting เหมาะสำหรับเว็บไซต์ขนาดเล็ก แต่เมื่อเว็บไซต์เติบโตจะพบข้อจำกัดหลายอย่าง ได้แก่ ทรัพยากร CPU และ RAM ถูกแชร์กับผู้ใช้อื่นทำให้เว็บช้า ไม่สามารถติดตั้งซอฟต์แวร์เพิ่มเติมได้ตามต้องการ ไม่มี Root Access และมีข้อจำกัดเรื่องพื้นที่จัดเก็บ Cloud VPS ของ de.co.th ให้ทรัพยากรเฉพาะ ควบคุมเต็มที่ และสามารถปรับแต่งได้ตามต้องการ
เตรียมตัวก่อนย้าย
ก่อนเริ่มย้ายควรเตรียมสิ่งต่อไปนี้ให้พร้อม สั่งซื้อ Cloud VPS จาก de.co.th และติดตั้ง Plesk Control Panel สำรองข้อมูลทั้งหมดจาก Shared Hosting เดิมก่อน ได้แก่ ไฟล์เว็บไซต์ทั้งหมด (wp-content, wp-config.php) ฐานข้อมูล MySQL และการตั้งค่า DNS ปัจจุบัน จดบันทึกข้อมูลการเข้าถึง Shared Hosting เดิม (cPanel, FTP, phpMyAdmin) ไว้ด้วย
ขั้นตอนที่ 1: Export ฐานข้อมูลจาก Shared Hosting
เข้าสู่ phpMyAdmin ของ Shared Hosting เดิม เลือกฐานข้อมูล WordPress แล้วคลิก Export เลือกรูปแบบ SQL และดาวน์โหลดไฟล์เก็บไว้ หรือหากมี SSH Access สามารถใช้คำสั่ง mysqldump ได้เลย
# Export ฐานข้อมูลผ่าน SSH (ถ้ามี)
mysqldump -u username -p database_name > wordpress_db.sql
ขั้นตอนที่ 2: ดาวน์โหลดไฟล์เว็บไซต์
ดาวน์โหลดไฟล์เว็บไซต์ทั้งหมดจาก Shared Hosting ผ่าน FTP หรือ File Manager โดยเฉพาะโฟลเดอร์ wp-content ที่มี Theme Plugin และไฟล์อัปโหลด และไฟล์ wp-config.php สำหรับเว็บขนาดใหญ่ แนะนำให้บีบอัดเป็นไฟล์ ZIP ก่อนดาวน์โหลดเพื่อความรวดเร็ว หรือใช้คำสั่ง rsync หรือ scp โอนไฟล์ตรงไป VPS ใหม่ได้เลย
# โอนไฟล์ไป VPS ใหม่ด้วย scp
scp -r wordpress_files.zip user@vps-ip:/tmp/
# หรือใช้ rsync สำหรับไฟล์จำนวนมาก
rsync -avz -e ssh wordpress_files/ user@vps-ip:/var/www/vhosts/example.com/httpdocs/
ขั้นตอนที่ 3: ตั้งค่า WordPress บน Cloud VPS
เข้าสู่ Plesk Control Panel สร้าง Domain ใหม่ สร้างฐานข้อมูล MySQL ใหม่พร้อม User อัปโหลดไฟล์เว็บไซต์ไปยังโฟลเดอร์ httpdocs ของ Domain แล้ว Import ฐานข้อมูลผ่าน phpMyAdmin ใน Plesk
# Import ฐานข้อมูลผ่าน Command Line
mysql -u db_user -p db_name < wordpress_db.sql
ขั้นตอนที่ 4: แก้ไข wp-config.php
แก้ไขไฟล์ wp-config.php ให้ตรงกับข้อมูลฐานข้อมูลบน Cloud VPS ใหม่ ได้แก่ DB_NAME ชื่อฐานข้อมูลใหม่ DB_USER ชื่อผู้ใช้ฐานข้อมูลใหม่ DB_PASSWORD รหัสผ่านใหม่ และ DB_HOST โดยทั่วไปใช้ localhost
define('DB_NAME', 'new_database_name');
define('DB_USER', 'new_db_user');
define('DB_PASSWORD', 'new_db_password');
define('DB_HOST', 'localhost');
ขั้นตอนที่ 5: อัปเดต URL ในฐานข้อมูล
หากใช้ Domain เดิม ขั้นตอนนี้อาจข้ามได้ แต่หากเปลี่ยน Domain ต้องอัปเดต URL ในฐานข้อมูล สามารถทำผ่าน phpMyAdmin หรือ WP-CLI
# อัปเดต URL ผ่าน WP-CLI
wp search-replace 'https://old-domain.com' 'https://new-domain.com' --all-tables
# หรือแก้ใน phpMyAdmin
UPDATE wp_options SET option_value = 'https://new-domain.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://new-domain.com' WHERE option_name = 'home';
ขั้นตอนที่ 6: ตั้งค่า File Permission
ตั้งค่า Permission ให้ถูกต้องเพื่อความปลอดภัยและการทำงานที่ถูกต้อง
# ตั้งค่า Permission ที่เหมาะสม
find /var/www/vhosts/example.com/httpdocs/ -type d -exec chmod 755 {} \;
find /var/www/vhosts/example.com/httpdocs/ -type f -exec chmod 644 {} \;
chown -R example.com:psacln /var/www/vhosts/example.com/httpdocs/
ขั้นตอนที่ 7: ชี้ DNS และติดตั้ง SSL
เปลี่ยน DNS Record ของ Domain ให้ชี้มาที่ IP ของ Cloud VPS ใหม่ รอให้ DNS แพร่กระจาย (ประมาณ 24-48 ชั่วโมง) จากนั้นติดตั้ง SSL Certificate ผ่าน Plesk โดยใช้ Let's Encrypt ที่ให้บริการฟรี
ขั้นตอนที่ 8: ตรวจสอบเว็บไซต์
ตรวจสอบว่าเว็บไซต์ทำงานปกติบน Cloud VPS ใหม่ ตรวจสอบทุกหน้า ลิงก์ทั้งหมด รูปภาพ Plugin และฟอร์มต่างๆ ว่ายังใช้งานได้ ตรวจสอบ Permalink ว่าทำงานถูกต้อง และตรวจสอบความเร็วของเว็บไซต์ว่าเร็วขึ้นกว่าเดิม
สรุป
การย้าย WordPress จาก Shared Hosting มา Cloud VPS ของ de.co.th ไม่ยากอย่างที่คิด สิ่งสำคัญคือการเตรียมตัวให้ดีและทำตามขั้นตอนอย่างระมัดระวัง หลังจากย้ายเสร็จคุณจะได้ประสิทธิภาพที่ดีขึ้นอย่างเห็นได้ชัด พร้อมความสามารถในการควบคุม Server ได้เต็มที่ผ่าน Plesk Control Panel

