Setiap migrasi situs web dianggap sebagai salah satu operasi yang paling sulit. Untungnya, WordPress menyediakan banyak sekali plugin cadangan untuk membantu dan mengotomatisasi seluruh proses pencadangan dan migrasi. Namun, WordPress dibuat sedemikian rupa sehingga memigrasikan WordPress secara manual menjadi lebih mudah.
Dalam tutorial ini, saya akan menunjukkan cara memigrasikan situs WordPress secara manual ke host atau server baru. Ini sangat berguna jika situs dihosting di server dengan sumber daya yang tidak mencukupi untuk mengaktifkan plugin cadangan. Plugin cadangan biasanya membutuhkan sumber daya dalam jumlah minimal untuk menjalankan pencadangan situs dan migrasi ke server lain. Saya telah menyiapkan daftar plugin cadangan untuk WordPress. Jadi, jika server Anda sehat dan memiliki sumber daya yang memadai, sebaiknya pasang plugin cadangan untuk migrasi WordPress.
Mari kita mulai prosesnya.
Prasyarat –
Perkiraan waktu membaca:8 menit
- Akses SSH ke kedua server
Cadangan WordPress
Setiap situs WordPress terdiri dari tiga komponen utama:file inti WordPress, file Pengguna (yaitu wp-content
direktori), dan database WordPress. Kecuali jika versi WordPress dimodifikasi, file inti tidak akan berubah. wp-content
dan database, di sisi lain, berubah setiap hari atau bahkan setiap jam, tergantung pada lalu lintas situs web. Jika Anda membuat konten baru secara teratur, gambar, video, dan teks baru diunggah setiap hari, meningkatkan jumlah file di server dan ukuran database.
Langkah pertama adalah mengompres wp-content
untuk mengurangi ukurannya dan mentransfernya dengan cepat ke server baru. Kedua, ekspor database WordPress, kompres dengan file pengguna, dan siapkan untuk migrasi.
konten wp
wp-content
adalah subdirektori dari direktori WordPress. Ini menyimpan semua data yang telah diunggah pengguna, seperti tema, plugin, lampiran, foto, video, dan sebagainya. Kecuali jika administrator situs mengonfigurasi CMS untuk melakukannya, sebagian besar situs WordPress tidak mengunggah konten pengguna ke direktori lain mana pun. Jika Anda menggunakan tema yang sangat disesuaikan, buat cadangan direktori yang berisi data yang relevan dengan struktur situs web kustom Anda.
Banyak plugin cadangan menyimpan file cadangan di tempat lain selain wp-content
. Jadi, jika Anda ingin memigrasikan file cadangan yang disimpan ke server baru, sertakan juga dalam arsip; sebagai alternatif, unduh dan simpan di tempat yang aman. Menambahkan file cadangan yang disimpan dapat meningkatkan ukuran cadangan lengkap secara signifikan, jadi silakan unduh secara lokal jika memungkinkan.
.htaccess
.htaccess
file adalah file konfigurasi yang memungkinkan pengguna untuk mengkonfigurasi pengaturan yang berbeda untuk setiap direktori. WordPress menghosting banyak .htaccess
file, yang utama terletak di root WordPress.
Cadangkan .htaccess
file karena berisi pengaturan konfigurasi berguna yang disetel oleh plugin yang diinstal seperti plugin firewall dan cache.
wp-config.php
wp-config.php
adalah file konfigurasi WordPress yang berisi informasi paling penting agar WordPress berfungsi. wp-config.php
file menyediakan informasi koneksi database. wp-config.php
file juga dapat menimpa batas PHP yang ditetapkan oleh server, antara lain. Jika Anda memigrasikan situs Anda ke host baru, pastikan untuk menyalin wp-config.php
bersama dengan file lain ke server baru.
Database WordPress
Saat membuat situs baru atau mentransfer situs lama, pastikan database dikonfigurasi dengan benar dengan situs tersebut. Seperti yang dinyatakan sebelumnya, wp-config.php
file berisi informasi basis data seperti nama basis data, pengguna basis data (dengan akses basis data penuh), dan kata sandi pengguna.
Untuk memigrasi WordPress secara efektif, kita harus mengekspor seluruh database dari server lama dan menyiapkannya untuk ditransfer ke host baru.
Migrasikan WordPress Secara Manual ke host baru
Untuk keperluan demonstrasi ini, saya akan menganggap IP server host lama kami adalah 192.168.29.5
dan IP server host baru kami adalah 192.168.57.8
.
Pertama, mari kita ssh ke server lama kita –
ssh [email protected]
Jika port ssh server Anda selain 22, gunakan -p
pilihan diikuti dengan nomor port.
ssh -p port_number [email protected]
Ekspor basis data
Langkah pertama adalah mengekspor database. Jika situs web Anda menerima volume lalu lintas yang tinggi, Anda dapat melakukan pemeliharaan atau mengalihkan pengunjung ke server cadangan. WordPress terus-menerus menulis data ke database, dan situs web yang lebih besar mungkin mengalami pelambatan saat proses ekspor database sedang berlangsung.
Setelah siap, gunakan perintah berikut untuk membuang semua database secara lokal –
mkdir $HOME/site-backup
cd $HOME/site-backup
mysqldump -u root -p wordpress_database > wp_database.sql
Ubah wordpress_database dengan nama database WordPress. Tekan enter dan masukkan kata sandi root MySQL. Sekarang duduk dan rileks. Tergantung pada ukuran database, proses ini mungkin memakan waktu. Jangan tekan + C selama proses.
Setelah proses selesai, Anda akan memiliki wp_database.sql
file di direktori kerja, yaitu cadangan situs.
Cadangkan wp-content, wp-config.php, dan .htaccess
Sekarang saatnya untuk mencadangkan file pengguna. Seperti yang dinyatakan sebelumnya, saya menganggap WordPress Anda menggunakan tema WordPress standar daripada tema yang sangat disesuaikan atau dibuat khusus. Jika Anda menggunakan tema yang dibuat khusus, harap sertakan direktori yang relevan dalam perintah berikut.
Masuk ke direktori root WordPress, dan jalankan perintah berikut –
$ tar -czf website-content.tar.gz /path-to-wordpress/wp-content/ path-to-wordpress/wp-config.php path-to-wordpress/.htaccess
Sekarang duduk dan rileks. Lihat betapa mudahnya memigrasi situs web. Anda bisa bersantai dua kali!
Setelah file dikompresi, pindahkan file terkompresi di site-backup
yang disebutkan di atas direktori.
mv website-content.tar.gz $HOME/site-backup/
Kami memiliki database kompres situs, data pengguna WordPress, dan penyesuaian di $HOME/site-backup/
kami direktori. Sekarang kompres seluruh direktori cadangan situs sehingga dapat dengan mudah ditransfer ke server baru.
tar -zcvf site-backup.tar.gz $HOME/site-backup/
Anda sekarang memiliki cadangan penuh dari situs WordPress Anda. Anda dapat mengunduh cadangan ini secara lokal dan memindahkannya ke server baru, atau Anda dapat menggunakan rsync
untuk mentransfernya langsung ke server baru.
Ayo unduh cadangan ini langsung di server baru.
SSH ke server baru –
ssh [email protected]192.168.57.8
Gunakan rsync untuk mengunduh file cadangan –
rsync [email protected]192.168.29.5:/home/site-backup.tar.gz .
Titik di akhir perintah di atas adalah direktori tujuan, yaitu direktori kerja saat ini.
Masukkan kata sandi root dan tunggu hingga unduhan selesai.
Instal WordPress di Host baru
Sekarang setelah kami memiliki data cadangan di server baru, kami dapat menyiapkan situs WordPress baru dan mengimpor semua data kami di situs itu.
Buat database untuk situs baru
Masuk ke baris perintah mysql dan gunakan perintah berikut untuk membuat database baru, pengguna baru, dan berikan pengguna baru semua hak istimewa ke database WordPress.
sudo mysql
Buat basis data baru
create database wordpress;
Buat pengguna basis data baru
create user 'username'@'localhost' identified by 'password';
Ganti nama pengguna dan kata sandi dengan nilai pilihan Anda. Berikan akses basis data ke pengguna baru
grant all privileges on wordpress.* to 'username'@'localhost';
flush privileges;
Impor basis data
Sekarang setelah database kami dibuat, kami dapat mengekspor database yang diunduh.
Buka tar atau kompres file cadangan –
tar -xvf /home/site-backup.tar.gz
Ini akan mengekspor dua file lagi, wp_database.sql
dan website-content.tar.gz
.
Impor database ke wordpress dengan perintah berikut –
mysql -u root -p wordpress < /home/site-backup/wp_database.sql
Masukkan kata sandi root dan santai. Sekali lagi.
Instal WordPress
Saya berasumsi bahwa Anda menggunakan server web Apache. Jadi root web default untuk server Apache adalah /var/www/html
. cd ke direktori root dan hapus index.html.
$ cd /var/www/html
$ rm index.html
Unduh WordPress
wget -O /tmp/wordpress.tar.gz https://wordpress.org/latest.tar.gz
sudo tar -xvf /tmp/wordpress.tar.gz -C /tmp/
sudo mv /tmp/wordpress/* /var/www/html
Impor cadangan WordPress ke situs baru
tar -xvf /home/site-backup/website-content.tar.gz
Perintah di atas akan membuka kompres wp-content
situs , wp-config.php
, dan .htaccess
. Kita dapat menggunakan rsync untuk memindahkan wp-content/
ke instalasi WordPress baru.
$ rsync -avu /home/site-backup/wp-content/ /var/www/html/wp-content/
$ cp /home/site-backup/wp-config.php /home/site-backup/.htaccess /var/www/html/
Edit wp-config.php
Dan salah satu langkah terakhir kami adalah menghubungkan situs kami dengan database yang baru dibuat. Ingat kami telah mengimpor database situs kami sehingga siap. Tidak perlu menjalankan instalasi WordPress.
$ nano /var/www/html/wp-config.php
Sekarang ganti nama database lama, username database, dan password dengan database server saat ini yang kita buat di atas, yaitu wordpress.
Perbaiki izin file WordPress
Jangan pernah lupa untuk mengatur hak akses file yang benar. Tanpanya, WordPress mungkin tidak berfungsi dengan baik, dan Anda dapat mengekspos data Anda jika izin yang ditetapkan salah.
$ chown -R www-data:www-data /var/www/html/
$ find /var/www/html/ -type d -exec chmod 755 {} \;
$ find /var/www/html/ -type f -exec chmod 650 {} \;
Ubah 'siteurl' dan 'home' di database
Jika Anda memindahkan situs tanpa mengubah nama domain, Anda dapat melewati langkah ini. Jika Anda mengubah nama domain, pastikan untuk memperbarui database dengan nama domain baru.
Kita perlu memperbarui ke kolom di tabel wp_options. Jika Anda memiliki phpMyAdmin, maka Anda dapat membuka phpMyAdmin> wordpress> wp_options> siteurl .
Ubah kolom ‘siteurl ' nilai ke 'https://www.newdomain.com'. Juga, ubah kolom ‘rumah ' nilai ke 'https://www.newdomain.com'.
Perbarui situs web dan rumah menggunakan baris perintah mysql –
sudo mysql
use wordpress;
update wp_options set option_value='https://www.newdomain.com' where option_name='siteurl'
update wp_options set option_value='https://www.newdomain.com' where option_name='home'
Terakhir, arahkan nama domain Anda ke server baru. Jika server web Anda diatur dengan benar, Anda akan melihat situs web lama Anda di host baru.
Kata Akhir
Prosedur manual tampaknya cukup rumit, tetapi percayalah ketika saya mengatakan bahwa setelah Anda terbiasa, itu akan menghemat uang Anda untuk plugin cadangan premium. Dengan menggunakan langkah-langkah yang diuraikan di atas, kita bahkan dapat membuat skrip dan menyiapkan tugas cron untuk mencadangkan situs web kita secara otomatis. Semua ini tanpa menggunakan plugin.
Terakhir, jika Anda mengalami kesulitan atau kesalahan saat mengikuti postingan ini, beri tahu kami di bagian komentar di bawah. Atau, Anda dapat bergabung dengan Server Discord kami untuk tanggapan yang lebih cepat.
Bacaan yang disarankanMemperbaiki "Kesalahan saat membangun koneksi database" kesalahan WordPress
Migrasikan Blog WordPress ke Hosting Baru – Cara Mudah
Host Situs Web Di Server Kami Sendiri
Perbaiki WordPress Tidak ada file input yang ditentukan Kesalahan
Plugin WordPress