ย้ายโฮสต์ WordPress แบบไม่สะดุด

พูดถึงเรื่องย้ายโฮสต์ น้อยคนนักที่จะย้าย หรือบางคนก็ย้ายบ่อย ก็แล้วแต่ความลำบาก…เอ๊ย ความสะดวกของแต่ละบุคคลหล่ะครับ แต่ถ้าใครใช้ Cpanel ก็สบาย ๆ ไป มันดีจนไม่ต้องใช้แรงสมองมาก

เรื่องย้ายโฮสต์ก็มีคนเขียนบทความกันเยอะ รวมทั้งผมด้วย แต่ก็แทบไม่มีใครพูดถึงย้ายโฮสต์แบบไม่สะดุดเลย ส่วนใหญ่แล้วมักเขียนแบบสะดุดหัวทิ่มหัวตำบ้าง เป็นบางครั้ง แม้ผมเองก็ตาม (ไม่ยอมน้อยหน้าคนอื่นเหมือนกัน) แต่เห็นเครื่องมือใน Cpanel แล้ว น่าสนใจ คือ Remote MySQL นั่นเอง เป็นการใช้ฐานข้อมูลต่าง Host ซะงั้น ลองใช้ดู เออ…เข้าท่าแฮะ

หลังจากลองแล้ว ได้ผลแฮะ ก็เป็นอันว่า เก็บไฟล์ WordPress ไว้โฮสต์เดิม แต่ใช้ฐานข้อมูลใน host ใหม่ซะ เมื่อ DNS มันอัพเดท มันก็จะไปใช้ข้อมูลใน host ใหม่เอง เห็นไหมครับว่า มันจะไปสะดุดได้อย่างไร เพราะใช้ฐานข้อมูลเดียวกัน ใคร DNS อัพเดท ก็ใช้ไฟล์ WordPress ใน Host ใหม่ แต่ใครยังไม่อัพเดท ก็ใช้ WordPress ใน host เก่าไป แต่ฐานข้อมูลอยู่ในโฮสต์ใหม่่ ฐานเดียวกัน โฮสต์เดียวกัน ดังนั้นไม่ต้องกลัวสะดุด เจ๋งไหมครับ…..

แล้ววิธีทำล่ะ??? อืม….ลองฝึกดูครับ เสมือนทำข้อสอบหล่ะครับ บอกแนวทางไปแล้ว คงไม่ยากหล่ะครับ

การย้ายบล็อก WordPress สู่โฮสต์ใหม่

การใช้ WordPress ไปนาน ๆ อาจจะต้องการที่จะเปลี่ยนโฮสต์ใหม่ ด้วยเหตุผลต่าง ๆ นา ๆ ที่แตกต่างกันออกไป เช่น ให้บริการไม่ดี, ช้า, อยากได้พื้นที่มากขึ้น, อยากได้แบนด์วิดธ์มากขึ้น, อยากได้ฐานข้อมูลมากขึ้น, อยากได้โฮสต์ราคาถูก, ไปใช้ของฟรี จะเห็นว่า ด้วยสาเหตุหลายประการจริง ๆ

การย้าย WordPress ไปยังโฮสต์ใหม่นั้น ก็ไม่ได้ยากอย่างที่หลาย ๆ คนคิดไปล่วงหน้า บางทีกลัวเพราะไม่เคยทำมาก่อน แต่จริง ๆ แล้วง่ายครับ เพราะจริง ๆ แล้ว WordPress จะมี 2 ส่วน คือ ส่วนของไฟล์ติดตั้ง (รวมทั้งข้อมูลต่าง ๆ ที่เราเพิ่มเข้าไป เช่นปลั๊กอิน, ธีม เป็นต้น) และอีกส่วนคือ ส่วนของข้อมูลต่าง ๆ ที่เราเขียนไป เช่นบทความ ข้อมูลเพจ (page) และความเห็นต่าง ๆ ซึ่งส่วนนี้จะอยู่ในฐานข้อมูล MySQL เราก็สำรองข้อมูลทั้ง 2 ส่วนนี้ไป และปรับแต่งส่วนอื่น ๆ อีกนิดหน่อยเท่านั้นเอง ทุกอย่างก็ราบรื่นแล้วหล่ะครับ

การย้ายบล็อกนี้ ควรที่จะเช่าโฮสต์ใหม่รอไว้ก่อน ก่อนที่จะย้าย และมีขั้นตอนในการย้ายบล็อก WordPress ดังนี้

  1. สำรองข้อมูลจากฐานข้อมูล MySQL โดยใช้ phpmyadmin
  2. สำรองข้อมูลติดตั้ง WordPress ทั้งหมด รวมทั้งไฟล์ .htaccess, robots.txt และไฟล์ต่าง ๆ ที่อัพโหลดไปยังบล็อก จากโฮสต์เดิม (หาก File Manager ใน Control Panel มีฟังก์ชั่น Compress/Extract ทำการย่อไฟล์เป็น .zip จาก File Manager แล้วดาวน์โหลดเพียงไฟล์เดียวจะเร็วกว่า) มาไว้ที่เครื่องของเรา
    ก่อน
  3. สร้างฐานข้อมูล ชื่อผู้ใช้ รหัสผ่าน บนโฮสต์ใหม่
  4. นำเข้าฐานข้อมูลที่ได้สำรองจากโฮสต์เก่า (ข้อ 1) เข้าไปยังโฮสต์ใหม่ ผ่านทาง phpmyadmin
  5. แก้ไขไฟล์ wp-config.php ที่ได้จากการสำรองข้อมูลใน ข้อ 2 โดยป้อนข้อมูลชื่อฐานข้อมูล ชื่อผู้ใช้และรหัสผ่าน ตามข้อมูลของโฮสต์ใหม่ที่สร้างจากข้อ 3 (ส่วนชื่อโฮสต์นั้นหากใช้ localhost เหมือนกัน ไม่ต้องเปลี่ยน)
  6. อัพโหลดไฟล์ของ WordPress ทั้งหมดไปยังโฮสต์ใหม่ในโฟลเดอร์ blog (ถ้าในโฮสต์ใหม่ File Manager ใน Control Panel มีฟังก์ชั่น Compress/Extract ให้อัพโหลดข้อมูล .zip แล้วไปขยายไฟล์ผ่าน File Manger จะเร็วกว่า)
  7. ไปยังส่วนจัดการโดเมนของผู้ให้บริการจดโดเมนที่เราได้จดโดเมนไว้ เปลี่ยน NameServer ให้เป็น NameServer ตามข้อมูลของโฮสต์ใหม่
  8. รอ NameServer อัพเดท ไม่เกิน 24 ชม. ก็สามารถเข้าถึงข้อมูลต่าง ๆ บนโฮสต์ใหม่ได้แล้ว

ขั้นตอนตามที่แสดงมา คงช่วยให้ผู้ที่ต้องการย้ายโฮสต์ ได้คลายกังวลและศึกษาเป็นแนวทางได้ หากมีข้อสงสัยอะไร สอบถามเพิ่มเติมก็แสดงความเห็นเข้ามาได้ครับ


ปรับปรุงข้อมูลล่าสุด : 27 มกราคม 2552

คำแนะนำ

เมื่อสำรองข้อมูลมาแล้ว ควรตรวจสอบความถูกต้องของข้อมูลด้วย โดยการขยายและเปิดดูข้อมูล หากมีปัญหาให้ทำการสำรองข้อมูลอีกครั้ง

ย้ายบล็อก WordPress ข้ามโฮสต์ ต่างโฟลเดอร์

การย้ายบล็อก WordPress นั้น บางทีอาจจะดูเหมือนกับเป็นเรื่องไกลตัว ไม่มีความจำเป็น แต่การได้เรียนรู้เอาไว้บ้าง เป็นสิ่งที่ดีไม่น้อย วันนี้ก็เลยเขียนบทความการย้ายบล็อก WordPress มาให้ได้อ่านกัน เป็นกรณีศึกษา ดูไว้เป็นแนวทาง สิ่งที่ผมทำนี้ เป็นการย้ายข้อมูลบล็อกจาก XirBit.Com นี้ ไปเก็บไว้อีกโดเมนหนึ่ง ที่อยู่คนละโฮสต์ ไปเก็บไว้ในโฟลเดอร์ blog ของโดเมน ก็คือจะเป็น http://newdomain.com/blog แบบนี้แหล่ะครับ (ไม่แน่ใจว่าจะมีใครทำแบบนี้หรือเปล่า) ข้อมูลเหล่านี้สามารถไปประยุกต์ใช้ในการย้ายบล็อก WordPress ไปยังโฮสต์ใหม่ได้ไม่ยาก เพียงแต่ขั้นตอนแตกต่างกันเล็กน้อยเท่านั้น

ขั้นตอนการย้ายบล็อก WordPress ข้ามโฮสต์ ต่างโฟลเดอร์ ทำมีดังนี้

  1. สำรองข้อมูลจากฐานข้อมูล MySQL โดยใช้ phpmyadmin
  2. สำรองข้อมูลติดตั้ง WordPress ทั้งหมด รวมทั้งไฟล์ .htaccess, robots.txt และไฟล์ต่าง ๆ ที่อัพโหลดไปยังบล็อก จากโฮสต์เดิม (หาก File Manager ใน Control Panel มีฟังก์ชั่น Compress/Extract ทำการย่อไฟล์เป็น .zip จาก File Manager แล้วดาวน์โหลดเพียงไฟล์เดียวจะเร็วกว่า)
  3. สร้างฐานข้อมูล ชื่อผู้ใช้ รหัสผ่าน บนโฮสต์ใหม่
  4. นำเข้าฐานข้อมูลที่ได้สำรองจากโฮสต์เก่า (ข้อ 1) เข้าไปยังโฮสต์ใหม่ ผ่านทาง phpmyadmin
  5. แก้ไขไฟล์ wp-config.php ที่ได้จากการสำรองข้อมูลใน ข้อ 2 โดยป้อนข้อมูลชื่อฐานข้อมูล ชื่อผู้ใช้และรหัสผ่าน ตามข้อมูลของโฮสต์ใหม่ที่สร้างจากข้อ 3 (ส่วนชื่อโฮสต์นั้นใช้ localhost เหมือนกัน ไม่ต้องเปลี่ยน) เพิ่มข้อมูล define(‘WP_SITEURL’, ‘http://newdomain.com/blog’); และ define(‘WP_HOME’, ‘http://newdomain.com/blog’); เข้าไปในไฟล์ wp-config.php ด้วย เป็นการกำหนด WordPress Url และ Blog Url ที่เว็บใหม่ โดยผ่านทางไฟล์ wp-config.php ซึ่งการตั้งค่านี้ จะมีความสำคัญกว่าการแก้ไขในฐานข้อมูล และ WordPress จะใช้ค่านี้เป็นหลัก และข้อมูลส่วนนี้ในเมนู Settings->General นั้นจะไม่สามารถแก้ไขได้ ซึ่งการใช้วิธีนี้ ทำให้ไม่ต้องไปแก้ไขในฐานข้อมูล
  6. อัพโหลดไฟล์ของ WordPress ทั้งหมดไปยังโฮสต์ใหม่ในโฟลเดอร์ blog (ถ้าในโฮสต์ใหม่ File Manager ใน Control Panel มีฟังก์ชั่น Compress/Extract ให้อัพโหลดข้อมูล .zip แล้วไปขยายไฟล์ผ่าน File Manager จะเร็วกว่า)
  7. ติดตั้งปลั๊กอิน Velvet Blues Update URLs โดยปลั๊กอินตัวนี้จะทำการปรับปรุง URLs ลิงก์ต่าง ๆ จากเว็บเดิมทั้งหมดให้เป็น URLs ของเว็บใหม่โดยที่เราไม่ต้องไปแก้ไขในฐานข้อมูลโดยตรง จากนั้น activate ปลั๊กอินแล้วเข้าไปที่เมนู Settings->Update Urls ในช่อง Old URL ให้ป้อน WordPress URL เดิม หรือ URL ที่ติดตั้ง WordPress ของโฮสต์เก่า (http://xirbit.com/blog) ส่วนในช่อง New URL ป้อน WordPress URL บนโฮสต์ใหม่ (http://newdomain.com/blog) แล้วคลิกปุ่ม Update URLs

เท่านี้เราก็สามารถย้ายข้อมูลบล็อก WordPress ได้แล้วครับ ปลั๊กอิน Velvet Blues Update URLs ตัวนี้ เรายังสามารถนำมานำประยุกต์ใช้ในกรณีอื่น ๆ ได้อีกเช่น ในกรณีนำข้อมูลจาก Blog online มาติดตั้งไว้ในเครื่องของเรา หรือการนำข้อมูลบล็อกจากเครื่องของเรานำไปไว้ใน Blog online หรือแม้กระทั่งการย้ายโฟลเดอร์ในการติดตั้ง WordPress