วิธีการย้าย Wordpress ไปยังโดเมนใหม่

Tags: 

Wordpress

จุดอ่อนสำคัญของ Wordpress สิ่งหนึ่งก็คือ เราไม่สามารถย้ายเว็บจากชื่อโดเมนเดิมเป็นชื่อใหม่ได้ง่ายนัก เนื่องจากตัวฐานข้อมูลที่มีการเก็บข้อมูลถึงระดับการเก็บชื่อโดเมน ซึ่งคำแนะนำจาก wordpress.org ก็คือให้ทำการ export post และ page จากเว็บเก่าออกมาทั้งหมด แล้วทำการลง Wordpress ใหม่ที่โดเมนใหม่พร้อมทั้งตั้งค่า ลง Plugins ให้เหมือนกับเว็บใหม่ แล้วจึงค่อย import post กับ page มายังเว็บใหม่ ซึ่งเป็นวิธีที่ยุ่งยากและใช้เวลานานมาก

วันนี้ผมก็เลยมาเสนอแนวทางอีกแนวทางนึงที่ผมใช้อยู่ แต่อาจจะไม่ได้เต็มร้อยนัก คือ เปลี่ยนชื่อโดเมนในฐานข้อมูลเองซะเลย ขั้นตอนในการทำมีดังนี้ครับ

  • สำรองข้อมูลทั้งตัวเว็บและฐานข้อมูลก่อนทำ (+++สำคัญมาก+++)
  • ทำการคัดลอกไฟล์เว็บและฐานข้อมูลของโดเมนเก่าทั้งหมดย้ายไปยังโดเมนใหม่
  • แก้ไขไฟล์ wp-config.php ให้ตรงกับโดเมนและฐานข้อมูลใหม่ของเรา
  • เปิด phpMyAdmin ไปที่ฐานข้อมูล Wordpress ของเว็บใหม่เรา แล้วไปที่ตาราง wp_posts จากนั้นให้แก้ไขชื่อโดเมนให้เป็นโดเมนใหม่ของเราที่ฟิลด์ option_name ที่มีค่าเป็น siteurl และ home
  • เปิด phpMyAdmin ไปที่ฐานข้อมูล Wordpress ของเว็บเรา แล้วไปที่หน้า SQL จากนั้นให้พิมพ์คำสั่งเพื่อทำการเปลี่ยนโดเมนใหม่ทั้งหมดดังนี้ (สมมติว่าโดเมนเก่าคือ http://www.wingfoss.com ส่วนพาธของเว็บเก่าคือ /home/wingfoss/domain/wingfoss.com/public_html และโดเมนใหม่คือ http://www.wingfoss.in.th ส่วนพาธของเว็บใหม่คือ /home/wingfoss/domain/wingfoss.in.th/public_html)
UPDATE wp_posts SET guid = replace(guid, 'http://www.wingfoss.com','http://www.wingfoss.in.th');
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.wingfoss.com', 'http://www.wingfoss.in.th');
UPDATE wp_postmeta SET meta_value = replace(meta_value, '/home/wingfoss/domain/wingfoss.com/public_html', '/home/wingfoss/domain/wingfoss.in.th/public_html');
  • หลังจากนี้อาจจะยังมีโดเมนเก่าค้างคาอยู่กับ Plugins บางตัวหรือบางจุดในฐานข้อมูล แนวทางการแก้ไขคือ ให้เรา Search ชื่อโดเมนเราจากใน phpMyAdmin และทำการแก้ไขทีละตัวด้วยตัวเอง หรือจะแก้ไขคำสั่ง SQL ข้างบนเพื่อเปลี่ยนชื่อโดเมนก็ได้ แต่ระวังอย่าไปยุ่งกับข้อมูลที่เป็น Serialize เป็นอันขาดถ้าไม่เข้าใจจริง มิฉะนั้นอาจจะทำให้เว็บมีปัญหาได้
  • ลองเปิดเว็บทดสอบดูว่ายังมีปัญหาที่จุดไหนอีกบ้างหรือเปล่า

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

ปล.เว็บ wingfoss.in.th ใช้ Drupal ในการทำ แต่ไม่เขียนบทความเกี่ยวกับ Drupal บ้างเลยแฮะ ฮ่วย!!!

Comments

ทำไม่ได้ครับ

ทำไม่ได้ครับ ของผมรุ่นอัพเดทมันจะมีฐานข้อมูลเหมือนกันรึปล่าว

แก้แล้ว พอหน้า index คลิกลิงค์บทความ ออกลิงค์เว็บเดิมครับ

MSN : Lc53842729@hotmail.com ช่วยหน่อยครับ

Add new comment