วิธีย้ายไซต์ WordPress จากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่ง

หากคุณต้องการย้ายไซต์ WordPress(move WordPress site)จากโฮสติ้งที่มีการจัดการ/ไม่มีการจัดการ/แชร์/ทุ่มเท/ VPSไปยังไซต์อื่นโดยไม่มีการหยุดทำงานที่สำคัญ นี่คือคำแนะนำที่คุณต้องการ หากคุณมีSSL อยู่แล้ว หรือต้องการย้ายไซต์จากโฮสติ้งที่ใช้ร่วมกันไปยังVPSคุณอาจประสบปัญหาการหยุดทำงานเล็กน้อย

ย้ายไซต์ WordPress(Migrate WordPress)จากเซิร์ฟเวอร์หนึ่งไปยังอีกเซิร์ฟเวอร์หนึ่ง

หากคุณมีเว็บไซต์ที่โฮสต์บนโฮสติ้งที่ใช้ร่วมกัน เช่นHostgator , Bluehost , Sitegroundฯลฯ นี่คือขั้นตอนที่คุณต้องปฏิบัติตาม โดยทั่วไปแล้ว บริษัทโฮสติ้งที่ใช้ร่วมกันเหล่านี้จะมี cPanel ดังนั้นจึงค่อนข้างง่ายที่จะย้ายทุกอย่างด้วยความช่วยเหลือของ cPanel

ขั้นแรก คุณต้องสำรองข้อมูลทุกอย่าง รวมทั้งไฟล์และฐานข้อมูลของคุณ

ในการสำรองไฟล์ของคุณ คุณต้องเปิด 'ตัวจัดการไฟล์' ที่ผู้ให้บริการโฮสต์ของคุณควรมี และคุณจะพบได้ใน cPanel ของคุณ หากคุณได้เพิ่มโดเมนหลายโดเมนในบัญชีโฮสติ้งของคุณ คุณจะต้องนำทางไปตามลำดับ มิฉะนั้น คุณจะพบไดเร็กทอรีชื่อpublic_htmlซึ่งคุณจะได้รับไฟล์ทั้งหมดรวมถึงWordPress core เลือก(Select)ไฟล์ทั้งหมด สร้างไฟล์เก็บถาวรที่มีนามสกุล .zip และสร้างโฟลเดอร์ที่บีบอัด ดาวน์โหลดลงในคอมพิวเตอร์ของคุณ อย่าลืมไฟล์เดียว - ส่วนใหญ่เป็น . htaccessซึ่งถูกซ่อนไว้โดยค่าเริ่มต้น

ตอนนี้คุณต้องสำรองฐานข้อมูลของคุณ เนื่องจากคุณมี cPanel และ phpMyAdmin แล้ว คุณสามารถใช้เครื่องมือนั้นเพื่อดาวน์โหลดฐานข้อมูล ในการดำเนินการดังกล่าว ให้เปิด cPanel ของคุณและไปที่ phpMyAdmin คุณสามารถค้นหาชื่อฐานข้อมูลของคุณได้ทางด้านซ้ายมือ เลือกและสลับไปที่แท็บส่งออก(Export )

จากที่นี่ คุณต้องเลือกQuick as Export methodและSQLจากเมนูดรอปดาวน์Format หลังจากนั้นให้คลิก ปุ่ม ไป(Go )เพื่อเริ่มการดาวน์โหลด

ย้ายไซต์ WordPress จากเซิร์ฟเวอร์หนึ่งไปยังอีกเซิร์ฟเวอร์หนึ่ง

ตอนนี้ คุณต้องไปที่บัญชีโฮสติ้งใหม่ของคุณและเพิ่มโดเมนก่อน หากคุณได้ดำเนินการไปแล้วในขณะที่ลงชื่อสมัครใช้บัญชีใหม่ คุณไม่จำเป็นต้องทำอีก อย่างไรก็ตาม หากคุณยังไม่ได้ดำเนินการดังกล่าว คุณต้องเพิ่มโดเมนของคุณใน cPanel คุณสามารถใช้ ตัวเลือก โดเมน(Addon Domains)เสริม (อาจแตกต่างกัน แต่คำยังคงคล้ายกัน)

หลังจากนั้น คุณต้องสร้างฐานข้อมูลสำหรับเว็บไซต์ใหม่ของคุณ ขณะสร้าง อย่าลืมจดชื่อฐานข้อมูล ID ผู้ใช้และรหัสผ่าน หากไม่มีสิ่งเหล่านี้ คุณจะไม่สามารถแมปไฟล์ของคุณกับฐานข้อมูลของคุณได้

คุณสามารถค้นหา ตัวเลือก ฐานข้อมูล MySQL(MySQL Database)ใน cPanel ของคุณ ซึ่งคุณสามารถใช้เพื่อทำให้เสร็จ ในการสร้างฐานข้อมูล คุณต้องป้อนชื่อฐานข้อมูล ID ผู้ใช้ และรหัสผ่าน คุณต้องสร้างไฟล์ชื่อฐานข้อมูลแล้วเพิ่ม ID ผู้ใช้และรหัสผ่าน หลังจากนั้น คุณต้องอนุญาตให้ ID ผู้ใช้เข้าถึงฐานข้อมูล สำหรับสิ่งนั้น คุณสามารถใช้ส่วนที่เรียกว่าเพิ่มผู้ใช้ในฐาน(Add user to database)ข้อมูล

หลังจากคลิก ปุ่ม เพิ่ม(Add )คุณจะพบหน้าต่างที่คุณต้องอนุญาต/บล็อก ID ผู้ใช้เพื่อเข้าถึงบางสิ่งในฐานข้อมูล ในการกำจัดปัญหาใดๆ คุณสามารถทำเครื่องหมายใน ตัวเลือก ALL PRIVILEGESแล้วคลิกปุ่มMake Changes(Make Changes )

ตอนนี้ คุณต้องอัปโหลดฐานข้อมูลที่คุณดาวน์โหลดจากบัญชีโฮสติ้งเก่า ในการนั้น ให้เปิดแอป phpMyAdmin และเลือกฐานข้อมูลจากด้านซ้ายมือของคุณ หลังจากนั้นไปที่แท็บนำเข้า (Import)คุณควรพบปุ่มที่เรียกว่าเลือก(Choose File)ไฟล์ คลิก(Click)ที่และเลือกไฟล์จากคอมพิวเตอร์ของคุณ

อย่าเปลี่ยนแปลงอะไรบนหน้าจอและคลิก ปุ่ม ไป(Go )โดยตรง ควรใช้เวลาสองสามวินาทีในการอัปโหลดให้เสร็จ

ขั้นตอนต่อไปคือการอัปโหลดไฟล์ที่คุณดาวน์โหลดจากเซิร์ฟเวอร์เก่า ในการดำเนินการดังกล่าว ให้เปิดไดเร็กทอรีรากของโดเมนของคุณโดยใช้ตัวจัดการไฟล์(File Manager)และไปที่public_html หากคุณมีโดเมนเดียว ให้อัปโหลดไฟล์ทั้งหมดที่นี่ หากคุณมีหลายโดเมน ให้ไปที่ไดเรกทอรีรากของโดเมนนั้นแล้วอัปโหลดไฟล์ที่นั่น หลังจากอัพโหลดแล้ว คุณต้องคลายซิปโฟลเดอร์ที่ซิป

ตอนนี้ คุณต้องแทนที่รายละเอียดฐานข้อมูลเก่าด้วยรายละเอียดใหม่ ในการนั้น ให้เปิดไฟล์ wp-config.php(wp-config.php )และแทนที่ชื่อฐานข้อมูล ID ผู้ใช้ และรหัสผ่าน หลังจากเปลี่ยนแล้วให้บันทึกไฟล์

ถัดไป คุณต้องเปลี่ยนชื่อเซิร์ฟเวอร์ของโดเมนของคุณ ในการนั้น ให้รับเนมเซิร์ฟเวอร์จากบัญชีโฮสติ้งของคุณแล้วป้อนลงในแผงควบคุมของโดเมน ผู้ให้บริการโดเมนที่แตกต่างกันมีตัวเลือกที่แตกต่างกัน (Different)อย่างไรก็ตาม คุณสามารถค้นหาหรือขอความช่วยเหลือจากทีมสนับสนุนได้

เมื่อทำตามขั้นตอนดังกล่าวแล้ว แสดงว่าคุณย้ายไฟล์จากโฮสต์หนึ่งไปยังอีกโฮสต์หนึ่งเสร็จแล้ว อาจใช้เวลาถึง 48 ชั่วโมงในการเผยแพร่ทุกอย่าง ในระหว่างนี้ คุณสามารถเปิดเว็บไซต์นี้(this website)และตรวจสอบว่าไซต์ของคุณแสดง IP ใหม่หรือเก่า หากมองเห็นที่อยู่ IP ใหม่ แสดงว่าการเผยแพร่เสร็จสิ้น คุณยังสามารถใช้เครื่องมือ ping บนคอมพิวเตอร์ของคุณเพื่อตรวจสอบที่อยู่ IP หากคอมพิวเตอร์ของคุณแสดง IP เก่า แต่เครื่องมือออนไลน์แสดง IP ใหม่ คุณต้องล้างแคช DNS ของ(flush your DNS cache)คุณ

วิธีย้าย ไซต์ WordPressจากโฮสติ้งที่ใช้ร่วมกันไปยังVPS ที่ไม่มีการจัดการ(VPS)

การย้ายเว็บไซต์ WordPress(WordPress)จากโฮสติ้งที่ใช้ร่วมกันไปยังโฮสติ้งอื่นนั้นค่อนข้างง่าย เนื่องจากทั้งคู่มี cPanel ซึ่งมีเครื่องมือที่จำเป็นทั้งหมด เช่น phpMyAdmin ตัวจัดการไฟล์(File Manager)และอื่นๆ อย่างไรก็ตาม มีผู้คนจำนวนมากที่มักเลือกVPS ที่ไม่มีการจัดการ เพราะคุณสามารถเข้าถึงรูทได้ และVPSที่ไม่มีการจัดการนั้นถูกกว่าโฮสติ้งที่ใช้ร่วมกัน

VPS ที่ไม่มีการจัดการคืออะไร

VPS หมาย ถึงVirtual Private Server พูดง่ายๆ ถ้า บัญชีโฮสติ้ง VPS ของคุณ ไม่มี cPanel คุณสามารถเรียกได้ว่าเป็นVPSที่ ไม่มีการจัดการ ในการเข้าถึง เซิร์ฟเวอร์ VPS ที่ไม่มีการจัดการ คุณต้องมีเครื่องมือบางอย่าง เช่นPutty ไคล(Putty) เอน ต์FTP(FTP client)เช่นFilezillaหรือCyberduck ตัวอย่างของ ผู้ให้บริการ VPS ที่ไม่มีการจัดการ ได้แก่Digital Ocean , Linode , Vultrเป็นต้น

หากคุณซื้อ บัญชี VPS ที่ไม่มีการจัดการ แล้ว และคุณไม่รู้อะไรเลย แต่คุณต้องการย้าย ไซต์ WordPressจากโฮสติ้งที่ใช้ร่วมกันไปยังVPS ที่ไม่มีการจัดการ คุณสามารถทำตามขั้นตอนต่อไปนี้

ก่อนเริ่มต้นดาวน์โหลด Cyberduck(download Cyberduck)และ Putty จากที่นี่ (here)นอกจากนี้ คุณต้องดาวน์โหลดข้อมูลสำรองของไซต์เก่า รวมถึงไฟล์และฐานข้อมูลทั้งหมด ขั้นตอนดังกล่าวข้างต้น

ตอนนี้ คุณควรรู้ว่าบางบริษัทเช่นWordPress , Ghost , Joomla , Discourseฯลฯ มีแอปแบบคลิกเดียว ในขณะที่บริษัทอื่นๆ เช่นLinodeไม่มีบริการดังกล่าว ในกรณีนั้น คุณสามารถใช้เครื่องมือของบริษัทอื่นได้ เช่นServerPilot , ServerAvatar , EasyEngineเป็นต้น ในบรรดาเครื่องมือเหล่านี้ServerPilotเพิ่งกลายเป็นเครื่องมือแบบชำระเงิน แต่นี่เป็นเครื่องมือที่ดีที่สุดในแง่ของความปลอดภัยและการใช้งาน

ไม่ว่าคุณจะใช้บัญชีโฮสติ้งใด คุณต้องสร้างเซิร์ฟเวอร์ก่อน ติดตั้งระบบปฏิบัติการ และจดรหัสผ่านรูทไว้ ผู้ให้บริการโฮสติ้งที่ แตก(Different)ต่างกันมีตัวเลือกที่แตกต่างกัน แต่สิ่งสำคัญก็เหมือนกัน อย่างไรก็ตาม หากคุณใช้ServerPilot คุณต้องใช้ (ServerPilot)Ubuntu LTS 16.04หรือ 18.04 เวอร์ชัน 64 บิต พวกเขาไม่สนับสนุนสิ่งอื่นใด

ดังนั้น คุณต้องเพิ่มชื่อโดเมนในบัญชีโฮสติ้งและเปลี่ยนชื่อเซิร์ฟเวอร์ในบัญชีโดเมนของคุณ นอกจากนี้ ขอแนะนำให้ใช้VPNตั้งแต่บัดนี้เป็นต้นไป มิฉะนั้น(Otherwise)คุณจะตรวจไม่พบบัญชีโฮสติ้งใหม่จากคอมพิวเตอร์ของคุณ

หากคุณใช้แอปDigital OceanหรือVultr เพียงคลิก(Vultr)เดียว คุณจะสามารถติดตั้งWordPressได้อย่างรวดเร็ว หากคุณเลือกวิธีนี้ คุณจะพบ ไฟล์การติดตั้ง WordPress ได้ ที่นี่:

/var/html

หากคุณใช้ ServerPilot เพื่อติดตั้งWordPressคุณสามารถค้นหา ไฟล์การติดตั้ง WordPress ได้ ที่นี่:

/srv/users/user_name/apps/app_name/public

คุณควรหาไฟล์ชื่อwp -config.php (wp-config.php)ดาวน์โหลดและเก็บชื่อผู้ใช้ฐานข้อมูลและรหัสผ่าน อย่าลืมทำเช่นนี้

คุณต้องลบไฟล์การติดตั้งWordPress ทั้งหมด (WordPress)เนื่องจากโฟลเดอร์ wp-admin, wp-content และ wp-includes ใช้เวลานานในการลบ คุณสามารถใช้ putty เพื่อลบออกได้ ในการนั้น ให้เปิดPuttyและป้อนที่อยู่ IP ของเซิร์ฟเวอร์ของคุณ ตรวจสอบ ให้(Make)แน่ใจว่าได้ ตั้งค่า พอร์ต(Port)เป็น22 จากนั้นให้คลิก ปุ่ม เปิด(Open )และยืนยันการเชื่อมต่อ หลังจากนั้นคุณต้องป้อนชื่อผู้ใช้และรหัสผ่านของคุณ ป้อนรู(root )ทเป็นชื่อผู้ใช้ คุณควรได้รับรหัสผ่านในหน้าเดียวกันหรือทางอีเมลหลังจากสร้างเซิร์ฟเวอร์ในบัญชีโฮสติ้งของคุณ

ถัดไป ป้อนสิ่งนี้:

ผู้ใช้แอปในคลิกเดียว:(One-click app users:)

rm -rf /var/html/wp-admin

rm -rf /var/html/wp-content

rm -rf /var/html/wp-includes

ผู้ใช้ ServerPilot:(ServerPilot users:)

rm -rf /srv/users/user_name/apps/app_name/public/wp-admin

rm -rf /srv/users/user_name/apps/app_name/public/wp-content

rm -rf /srv/users/user_name/apps/app_name/public/wp-includes

หลังจากนั้น คุณสามารถเปิด แอป Cyberduckนำทางไปยังโฟลเดอร์นั้นและลบไฟล์การติดตั้งอื่นๆ

ในขั้นตอนต่อไป คุณต้องอัปโหลดไฟล์สำรองข้อมูลซิป (zipped)ทำอย่างนั้นและแตกไฟล์ หากคุณได้รับข้อผิดพลาดขณะทำการคลายซิป คุณสามารถป้อนคำสั่งนี้ในPutty :

sudo apt-get update

sudo apt-get install unzip

หลังจากคลายซิปไฟล์เหล่านั้น คุณต้องแทนที่ข้อมูลฐานข้อมูล ในการนั้น ให้เปิดไฟล์ wp-config.php ที่คุณดาวน์โหลดมา ถัดไป เปิดไฟล์ wp-config.php ปัจจุบันที่คุณเพิ่งอัปโหลด คัดลอกชื่อฐานข้อมูล ID ผู้ใช้ และรหัสผ่านจากไฟล์ wp-config.php ที่ดาวน์โหลดมา และแทนที่ด้วยไฟล์ wp-config.php ที่อัปโหลด

จากนั้นคุณต้องติดตั้ง phpMyAdmin มิฉะนั้น คุณจะไม่สามารถนำเข้าฐานข้อมูลได้ เพื่อทำตามขั้นตอนเหล่านี้

S0 ดาวน์โหลด phpMyAdmin เวอร์ชันล่าสุดจากที่นี่(here)และอัปโหลดไฟล์ zip ไปยังไดเร็กทอรีรากของคุณ หลังจากนั้นให้แตกไฟล์และเปลี่ยนชื่อ ตรวจสอบ ให้(Make)แน่ใจ; คุณใช้ชื่อที่ไม่สามารถคาดเดาได้ ตัวอย่างเช่น หากคุณเลือกabcdคุณสามารถเปิด phpMyAdmin ได้ดังนี้:

http://your-domain-name/abcd

หลังจากเลือกชื่อแล้ว ให้เปิดโฟลเดอร์และค้นหาไฟล์config.sample.inc.php คุณสามารถเปลี่ยนชื่อเป็นconfig.inc.php หลังจากนั้นให้เปิดไฟล์นี้ด้วยโปรแกรมแก้ไขและทำการเปลี่ยนแปลงในลักษณะที่ระบุว่า:

$cfg['blowfish_secret']

ควรมีลักษณะดังนี้:

$cfg['blowfish_secret'] = 'k7i259684(*^3q42bd^$4353yow*q5Trs^1'

ตอนนี้ เปิด phpMyAdmin แล้วป้อน ID ผู้ใช้ฐานข้อมูลและรหัสผ่านเพื่อเข้าสู่ระบบ จากนั้น เลือกชื่อฐานข้อมูลทางด้านซ้ายมือ เลือกตารางฐานข้อมูลทั้งหมด แล้วลบออกตามนั้น

จากนั้นไปที่ แท็บ นำเข้า(Import )และนำเข้าฐานข้อมูลที่คุณดาวน์โหลดมาก่อนหน้านี้

นั่นคือทั้งหมด! ตอนนี้เว็บไซต์ของคุณควรทำงานอย่างถูกต้องในบัญชีโฮสติ้งใหม่

วิธีย้ายไซต์WordPress จาก (WordPress)VPS ที่ไม่มีการจัดการ ไปยังโฮสติ้งที่ใช้ร่วมกัน

มันค่อนข้างง่ายและใช้เวลาไม่นานเช่นกัน สิ่งที่ดีที่สุดคือขั้นตอนเกือบจะเหมือนกัน ยกเว้น ถ้าคุณยังไม่ได้ติดตั้ง phpMyAdmin คุณต้องทำการดาวน์โหลดฐานข้อมูล

โดยสรุป นี่คือขั้นตอนที่คุณต้องปฏิบัติตาม

  1. ดาวน์โหลด(Download)ไฟล์ทั้งหมดจากบัญชีVPS
  2. ดาวน์โหลดฐานข้อมูล
  3. สร้างฐานข้อมูลในบัญชีโฮสติ้งที่ใช้ร่วมกันของคุณและกำหนดฐานข้อมูลให้กับผู้ใช้
  4. อัปโหลดไฟล์ทั้งหมดไปยังบัญชีโฮสติ้งใหม่ของคุณ
  5. เปลี่ยนชื่อฐานข้อมูล ชื่อผู้ใช้ และรหัสผ่านในไฟล์ wp-config.php
  6. เปลี่ยนเนมเซิร์ฟเวอร์ในแผงควบคุมโดเมนของคุณ

นั่นคือทั้งหมด!

ปัญหาทั่วไปหลังเปลี่ยนเซิฟเวอร์

คุณอาจประสบปัญหาต่างๆ หลังจากเสร็จสิ้นการย้ายข้อมูล บางส่วนของพวกเขาถูกกล่าวถึงด้านล่าง

หน้าแรกกำลังเปิด แต่โพสต์แสดงข้อผิดพลาด 404(Homepage is opening, but posts are showing 404 error)

ตรวจสอบไฟล์ .htaccess ของคุณและใช้เป็นค่าเริ่มต้น:

# BEGIN WordPress

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

</IfModule>

# END WordPress

ไปที่นี่ด้วย:

/etc/apache2/apache2.conf

และทำการเปลี่ยนแปลงนี้:

<Directory /var/www/>

AllowOverride All

</Directory>

ติดตั้งปลั๊กอินไม่ได้ ขอรายละเอียดการเข้าสู่ระบบ FTP(Unable to install plugins, asking FTP login details)

นี่เป็นปัญหาทั่วไปที่ผู้คนพบเจอ คุณต้องเปิดไฟล์ wp-config.php แล้ววางที่ด้านล่าง

define( 'FS_METHOD', 'direct' );

การติดตั้งล้มเหลว: ไม่สามารถสร้างไดเร็กทอรี(Installation failed: Could not create directory)

หากคุณไม่สามารถอัปโหลดรูปภาพ ติดตั้งปลั๊กอิน อัปเดตธีมหรือปลั๊กอิน และคุณได้รับข้อผิดพลาดด้านบน คุณสามารถแก้ไขได้โดยเปลี่ยนการอนุญาต เปิด Putty(Open Putty)และป้อนสิ่งนี้:

chmod -R 775 directory_path

คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการอนุญาตไฟล์ได้จากที่นี่(here)

เปลี่ยนเส้นทางที่ไม่ใช่ www ไปยัง www โดยใช้ htaccess(Redirect non-www to www using htaccess)

RewriteEngine on

RewriteCond %{HTTP_HOST} ^your-domain-name.com [NC]

RewriteRule ^(.*)$ http://www.your-domain-name.com/$1 [L,R=301,NC]

เปลี่ยนเส้นทาง www ไปยังไม่ใช่ www(Redirect www to non-www)

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.your-domain-name.com [NC]

RewriteRule ^(.*)$ http://your-domain-name.com/$1 [L,R=301]

อย่างไรก็ตาม คุณควรป้อนระเบียน CNAME(CNAME)ด้วยwwwเช่นเดียวกับ@หรือเว้นว่างไว้

โปรด(Please)ทราบว่าคุณต้องติดตั้งSSLแยกต่างหาก หากผู้ให้บริการโฮสต์ของคุณเสนอSSL ฟรี คุณสามารถขอให้พวกเขาติดตั้งให้คุณได้ มิฉะนั้น คุณสามารถใช้ Let's Encryptซึ่งให้ใบรับรองSSL ฟรีแต่ใช้ร่วมกันได้(SSL)



About the author

ฉันเป็นวิศวกรซอฟต์แวร์ที่มีประสบการณ์และมีประสบการณ์มากกว่า 10 ปีในแอป Windows และระบบนิเวศการจัดการไฟล์ ฉันยังเป็นผู้เชี่ยวชาญในการพัฒนาระบบและโซลูชันการรักษาความปลอดภัยสำหรับธุรกิจและรัฐบาลอีกด้วย ประสบการณ์ของฉันในทั้งสองด้านทำให้ฉันมีมุมมองที่ไม่เหมือนใครเกี่ยวกับสิ่งที่ทำให้ซอฟต์แวร์ ระบบ และความปลอดภัยที่ดี และวิธีการสร้างซอฟต์แวร์อย่างมีประสิทธิภาพ



Related posts