~/grkn/posts $ cat wordpress-sitenizi-profesyonelce-tasiyin-veya-kopyalayin.md
WordPress Sitenizi Profesyonelce Taşıyın veya Kopyalayın
- Ön Koşullar
- WP CLI Kurulumu
- Dosyaları ve Veritabanlarını Taşıma
- Eski Linkleri Yenileriyle Değiştirme
- Temizlik
- Sonuç
phpmyadmin’de bu kadar çok zaman kaybetmeye gerek yok. WP CLI kullanarak WordPress sitenizi profesyonelce taşıyın ya da kopyalayın. Nasıl yapılacağını öğrenin.
Bir WordPress sitesini taşımanın ya da kopyalamanın birçok yolu var. Bir WordPress eklentisi kullanabilirsiniz. WordPress dosyalarınızı ve verinizi taşıyabilir, sonra veritabanınızı yeni sunucuda güncelleyebilirsiniz. Günümüzde hosting kontrol panelleri (cPanel ve Plesk gibi) WP Toolkit gibi kendi araçlarıyla taşıma ve kopyalama işlemlerini destekliyor.
Genellikle her WordPress admin’i sitesini klasik yöntemle taşır ya da kopyalar. Klasik yöntemde, website dosyalarınızı arşivliyor ve veritabanınızı export ediyorsunuz, sonra bunları yeni sunucuya taşıyorsunuz, dosyaları yeni konumda çıkarıp veritabanını import ediyorsunuz, ardından bilgilerinizi değiştiriyorsunuz. Ama başka bir siteye taşıyorsanız ya da kopyalıyorsanız, veritabanındaki linkleri değiştirmek gibi ekstra bir işiniz oluyor. Tablolarda ve binlerce satırında find-and-replace yapmak zor.
Benim yöntemimde, eski linkleri yenileriyle değiştirmek için phpmyadmin kullanmanıza gerek yok. Ama bunun için SSH erişimine ve wp-cli’a ihtiyacımız var. Bunlara sahip olduğunuzu varsayacağım.
Ön Koşullar
- SSH Erişimi
- wp-cli
WP CLI Kurulumu
Öncelikle, WP CLI’ı sunucunuza indirmeniz gerekiyor.
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Ardından phar dosyasına +x chmod izni vermelisiniz, sonra onu /usr/local/bin dizinine taşıyabilirsiniz.
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/php
Binary dosyayı şu komutla test edebilirsiniz.
wp --info

Dosyaları ve Veritabanlarını Taşıma
Dosyalarınızın bulunduğu dizine gidin. Ardından dosyalarınız için bir arşiv oluşturup sıkıştırın.
tar -czvf bckp-wp.tar.gz * .htaccess
Veritabanı bilgilerinizi bulun.
cat wp-config.php | grep DB
Ardından export etmek için mysqldump komutunu kullanın.
mysqldump -u MYSQLUSER -p MYSQLDATABASE > MYSQLDATABASE.sql
Veritabanı şifrenizi girin ve tamamlanana kadar bekleyin.
Artık taşımaya hazırsınız. Arşiv ve sql dosyalarını bilgisayarınıza indirebilir ya da yeni sunucunuzda wget ile indirebilirsiniz. Yeni bir sunucunuz olduğunu varsaydım, ama aynı sunucuyu kullanacaksanız, dosyalarınızı yeni konuma kopyalayabilir ya da taşıyabilirsiniz.
Dosyalarınızı yeni konumda çıkarın.
tar -zxvf bckp-wp.tar.gz
Dosyalara owner ve group haklarını verin.
chown -R user:user * .htaccess
Veritabanınızı yeni veritabanına import edin.
mysql -u MYSQLUSER -p MYSQLDATABASE < MYSQLDATABASE.sql
Eski Linkleri Yenileriyle Değiştirme
Artık yeni konumunuzda aynı dosyalara ve aynı veritabanına sahipsiniz. Sadece tüm linkleri yenileriyle değiştirmemiz gerekiyor. Bunun için tek bir komutumuz var.
wp search-replace "https://aaa.com" "https://bbb.com" --allow-root
Ayrıca http linklerini de yeni domain adıyla https’e değiştirebilirsiniz.
wp search-replace "http://aaa.com" "https://bbb.com" --allow-root
Temizlik
Arşiv ve sql dosyasını her iki sunucudan da silmelisiniz. Çünkü internette, herkese açık şekilde duran arşiv ve sql dosyalarını bulmak için çok fazla zararlı bot var.
Sonuç
Bu kadar 👋 Artık website linkinizi takipçilerinizle paylaşmaya hazırsınız.
“Veritabanı oluşturma, kullanıcılara izin verme vb.” gibi her tek adımı yazıya yazmadım. Çünkü bu adımları zaten bilmiyorsanız ya da Linux’u düzgün kullanamıyorsanız, bu yazı size uygun değil.