Birçok WordPress kullanıcısı, bilgisayarlarında yerel bir sunucu kullanarak web siteleri üzerinde çalışmayı tercih eder. Bu, değişiklikleri çevrimiçi olarak kullanıma sunmadan önce web siteniz üzerinde özel olarak çalışmanıza olanak tanır.
Sonunda, çevrimiçi ziyaretçilerin erişimine açmak için web sitenizi canlı bir sunucuya taşımanız gerekecektir. Bu geçiş, web sitenizin canlı sitede düzgün çalışmasını sağlamak için çok önemlidir.
Birçok yerel web sitesi üzerinde çalıştık, bu nedenle içeriği canlı web sitelerine aktarmanın en kolay yolunu öğrenmemiz gerekiyordu.
Bu makalede, WordPress’in yerel bir sunucudan canlı bir siteye nasıl taşınacağına ilişkin adım adım talimatlar vereceğiz.
WordPress’i Neden Yerel Sunucudan Canlı Siteye Taşımalısınız?
WordPress blogunuzu yerel bir sunucuda oluşturmak, web sitenizdeki değişiklikleri ziyaretçileri etkilemeden test etmenin güvenli bir yoludur.
Web sitenizi mükemmelleştirmeyi tamamladığınızda, bir sonraki adım yerel sunucunuzdan canlı bir siteye geçmektir.
Sitenizi yerel bir sunucudan canlı bir siteye taşımanın iki yolunu gösterelim.
İlk yöntem bir WordPress geçiş eklentisi kullanır ve yeni başlayanlar için önerilir.
İkinci yöntemde, WordPress’i yerel bir sunucudan canlı bir siteye manuel olarak nasıl taşıyacağınızı göstereceğiz.
Sizin için en uygun olan yöntemi seçebilirsiniz:
WordPress Sitenizi Taşımadan Önce
WordPress’i yerel bir sunucudan canlı bir sunucuya taşımak için birkaç şeye sahip olmanız gerekir.
İlk olarak, bilgisayarınızdaki yerel bir sunucuda (localhost olarak da adlandırılır) çalışan bir WordPress siteniz olduğunu ve buna tam erişiminiz olduğunu varsayıyoruz.
Ardından, bir alan adına ve web barındırma hizmetine sahip olmanız gerekir.
Kötü veya ücretsiz web barındırma sağlayıcılarıyla başlayıp pişman olan yeni başlayanlardan sayısız hikaye duyduk. Deneyimlerimize göre, doğru barındırma sağlayıcısını seçmek herhangi bir web sitesinin başarısı için kritik öneme sahiptir.
Kararınızı kolaylaştırmak için Bluehost kullanmanızı öneririz. Resmi olarak önerilen bir WordPress barındırma şirketidir ve WPBeginner kullanıcılarına özel bir indirim + ücretsiz alan adı ve SSL veriyorlar.
Temel olarak, ayda 1,99 $ gibi düşük bir ücretle başlayabilirsiniz.
Harika bir Bluehost alternatifi istiyorsanız, Hostinger‘a bakabilirsiniz. Ayrıca WPBeginner kullanıcılarına ücretsiz bir alan adı ile özel bir indirim sunuyorlar.
Biraz daha fazla ödemeyi göze alabiliyorsanız, SiteGround‘a göz atın. Ayrıca WPBeginner okuyucuları için özel bir fırsatları var.
Web sitenizi kurmak için yardıma ihtiyacınız varsa, bir web sitesinin nasıl yapılacağına ilişkin adım adım kılavuzumuzu izleyin.
Son olarak, bir FTP programına ihtiyacınız olacak ve yerel sunucu sitenizi canlı siteye yüklemek için FTP’yi nasıl kullanacağınızı bileceksiniz.
Hazır mısınız? WordPress sitenizi taşımaya başlayalım.
Video Eğitimi
Yazılı talimatları tercih ediyorsanız, okumaya devam edin.
Yöntem 1: Bir Geçiş Eklentisi Kullanarak WordPress’i Yerel Sunucudan Canlı Siteye Aktarın (Önerilen)
Bu yöntem daha kolaydır ve yeni başlayanlar için önerilir. WordPress’i localhost’tan canlı bir siteye taşımak için bir WordPress migration eklentisi kullanacağız.
Adım 1: Duplicator Eklentisini Kurun ve Ayarlayın
Öncelikle, yerel sitenize Duplicator eklentisini yüklemeniz ve etkinleştirmeniz gerekir. Daha fazla ayrıntı için, bir WordPress eklentisinin nasıl kurulacağına ilişkin adım adım kılavuzumuza bakın.
Profesyonelİpucu: Duplicator ‘ın güvenli yedeklemeler, bulut depolama, kolay site geri yükleme ve daha fazlasını sunan profesyonel bir sürümü de vardır.
Etkinleştirmenin ardından, Duplicator ” Yedeklemeler sayfasına gitmeniz ve ‘Yeni Oluştur’ düğmesine tıklamanız gerekir.
Bu sizi yedeklemenize bir ad verebileceğiniz bir ekrana getirir.
Ardından, ‘İleri’ düğmesine tıklayın.
Duplicator şimdi her şeyin yolunda olup olmadığını görmek için bazı testler yapacaktır.
Tüm öğeler ‘İyi’ olarak işaretlenmişse, ‘Oluştur’ düğmesine tıklayın.
Bu işlem, web sitenizin boyutuna bağlı olarak birkaç dakika sürebilir. İşlem tamamlanana kadar bu sekmeyi açık bırakmalısınız.
Tamamlandığında, ‘Yükleyici’ ve ‘Arşiv’ paketleri için indirme seçenekleri göreceksiniz. Her iki dosyayı da bilgisayarınıza indirmek için ‘Her İki Dosyayı da İndir’ düğmesine tıklamanız gerekir.
‘Arşiv’ dosyası WordPress sitenizin eksiksiz bir kopyasıdır. Tüm WordPress çekirdek dosyalarının yanı sıra resimlerinizi, yüklemelerinizi, temalarınızı, eklentilerinizi ve WordPress veritabanınızın bir yedeğini içerir.
‘Yükleyici’ dosyası, web sitenizi içeren arşiv dosyasını açarak tüm geçiş sürecini otomatikleştirecek bir komut dosyasıdır.
Adım 2: Canlı WordPress Web Siteniz İçin Bir Veritabanı Oluşturun
Yükleyiciyi çalıştırmadan veya WordPress web sitesini localhost’tan hosting sunucunuza yüklemeden önce, yeni canlı web siteniz için bir MySQL veritabanı oluşturmanız gerekir.
Zaten bir MySQL veritabanı oluşturduysanız, bu adımı atlayabilirsiniz.
Bir veritabanı oluşturmak için hosting hesabınızın cPanel kontrol panelini ziyaret etmeniz gerekir. Ardından, ‘Veritabanları’ bölümünü bulun ve ‘MySQL Veritabanı Sihirbazı’ simgesine tıklayın.
Bir sonraki ekranda, yeni bir veritabanı oluşturmak için bir alan vardır.
Veritabanınız için bir ad girin ve ‘Veritabanı Oluştur’ düğmesine tıklayın.
cPanel şimdi sizin için yeni bir veritabanı oluşturacaktır.
Bundan sonra, yeni kullanıcınız için bir kullanıcı adı ve şifre girmeniz ve ardından ‘Kullanıcı Oluştur’ düğmesine tıklamanız gerekir.
Ardından, yeni oluşturduğunuz kullanıcıyı veritabanına eklemeniz gerekir.
İlk olarak, ‘Tüm Ayrıcalıklar’ onay kutusunu tıklayın.
Ardından, aşağı kaydırın ve değişikliklerinizi kaydetmek için ‘Değişiklik Yap’ düğmesine tıklayın.
Veritabanınız artık WordPress sitenizle birlikte kullanılmaya hazırdır. Veritabanı adını, kullanıcı adını ve parolayı not ettiğinizden emin olun. Bu bilgilere bir sonraki adımda ihtiyacınız olacak.
Adım 3: Dosyaları Yerel Sunucudan Canlı WordPress Web Sitesine Yükleyin
Şimdi, arşiv ve yükleyici dosyalarını yerel sitenizden barındırma hesabınıza yüklemeniz gerekir.
İlk olarak, bir FTP istemcisi kullanarak canlı sitenize bağlanın. Bağlandıktan sonra, web sitenizin kök dizininin tamamen boş olduğundan emin olun.
Normalde kök dizin /home/public_html/
klasörüdür.
Bazı WordPress barındırma şirketleri, kaydolduğunuzda WordPress’i otomatik olarak yükler. Eğer orada WordPress dosyalarınız varsa, onları silmeniz gerekir.
Bundan sonra, archive.zip ve installer.php dosyalarını Duplicator’dan boş kök dizininize yükleyebilirsiniz.
Adım 4: Geçiş Komut Dosyasını Çalıştırma
Geçiş dosyalarını yükledikten sonra, tarayıcınızda aşağıdaki URL’yi ziyaret etmeniz gerekir:
http://example.com/installer.php
‘example.com’ yerine kendi alan adınızı yazmayı unutmayın.
Bu, Duplicator geçiş sihirbazını başlatacaktır.
Yükleyici birkaç test çalıştıracak ve komut dosyasını başlatacaktır.
Kurulum bölümü altında, MySQL ana bilgisayarınızı, veritabanı adınızı, kullanıcı adınızı ve şifrenizi girmeniz istenecektir.
Ana bilgisayarınız muhtemelen yerel bir ana bilgisayar olacaktır. Bundan sonra, bir önceki adımda oluşturduğunuz veritabanının ayrıntılarını gireceksiniz.
Ardından, girdiğiniz bilgilerin doğru olduğundan emin olmak için ‘Doğrula’ düğmesine tıklayın.
Bundan sonra, devam etmek için ‘İleri’ düğmesine tıklayın.
Duplicator şimdi WordPress veritabanı yedeğinizi arşivden yeni veritabanınıza aktaracaktır.
Ayrıca yerel siteye ve yeni canlı sitenize işaret eden URL’leri de güncelleyecektir.
Artık canlı sitenizin WordPress yönetici alanına girmek için ‘Yönetici Girişi’ düğmesine tıklayabilirsiniz.
Canlı sitenizde oturum açtığınızda, Duplicator kurulum dosyalarını otomatik olarak temizleyecektir.
Hepsi bu kadar. WordPress’i yerel sunucudan canlı sitenize başarıyla taşıdınız.
Yöntem 2: WordPress’i Yerel Sunucudan Canlı Siteye Manuel Olarak Aktarın
Bu yöntemde, WordPress’i yerel sunucudan canlı sitenize manuel olarak nasıl taşıyacağınızı göstereceğiz. İlk yöntem işe yaramazsa veya manuel olarak yapmayı tercih ederseniz faydalı olacaktır.
Adım 1: Yerel WordPress Veritabanını Dışa Aktarın
Yapmanız gereken ilk şey yerel WordPress veritabanınızı dışa aktarmaktır. Bunu yapmak için phpMyAdmin kullanacağız.
Eğer bu konuda bilginiz yoksa, phpMyAdmin kullanarak WordPress veritabanı yönetimi rehberimize göz atmak isteyebilirsiniz.
Basitçe http://localhost/phpmyadmin/
adresine gidin ve WordPress veritabanınıza tıklayın. Ardından, üst menü çubuğundan ‘Dışa Aktar’ düğmesine tıklayın.
‘Dışa aktarma yöntemi:’ seçeneğinde, ‘Hızlı’ veya ‘Özel’i seçebilirsiniz. Özel, veritabanınızı dışa aktarmak için size daha fazla seçenek sağlayacaktır.
Ancak veritabanınızı indirmek için ‘Hızlı’yı seçmenizi ve ardından ‘Git’ düğmesine tıklamanızı öneririz.
Adım 2: WordPress Dosyalarını Canlı Siteye Yükleyin
Şimdi, tüm web sitesi dosyalarınızı canlı siteye taşımamız gerekecek.
Başlamak için FTP istemcinizi açın ve web barındırma hesabınıza bağlanın.
Canlı sitenize bağlandıktan sonra, dosyaları doğru dizine yüklediğinizden emin olun. Örneğin, sitenin ‘yoursite.com’ adresinde barındırılmasını istiyorsanız, tüm dosyaları public_html
dizininize yüklemek isteyeceksiniz.
Şimdi yerel WordPress dosyalarınızı seçin ve canlı sunucunuza yükleyin.
Adım 3: Canlı Sitenizde MySQL Veritabanı Oluşturun
FTP istemciniz WordPress dosyalarınızı yüklerken, veritabanınızı canlı sunucuya aktarmaya başlayabilirsiniz.
Çoğu WordPress barındırma sağlayıcısı, barındırma hesabınızı yönetmek için cPanel sunar, bu nedenle size cPanel kullanarak nasıl veritabanı oluşturacağınızı göstereceğiz.
Öncelikle, cPanel panonuza giriş yapmanız ve ‘Veritabanları’ bölümünde bulunan ‘MySQL Veritabanı Sihirbazı’ simgesine tıklamanız gerekir.
Bir sonraki ekranda yeni bir veritabanı oluşturabilirsiniz.
Veritabanınız için bir ad girmeniz ve ardından ‘Veritabanı Oluştur’a tıklamanız gerekir.
cPanel şimdi sizin için otomatik olarak yeni bir veritabanı oluşturacaktır.
Ardından, yeni kullanıcınız için bir kullanıcı adı ve şifre girmeniz ve ardından ‘Kullanıcı Oluştur’a tıklamanız gerekir.
Bundan sonra, yeni oluşturduğunuz kullanıcıyı veritabanına eklemeniz gerekir.
İlk olarak, ‘Tüm Ayrıcalıklar’ onay kutusunu işaretleyin.
Ardından, aşağı kaydırın ve değişikliklerinizi kaydetmek için ‘Değişiklik Yap’a tıklayın.
Canlı WordPress siteniz için başarıyla yeni bir veritabanı oluşturdunuz.
Adım 4: WordPress Veritabanını Canlı Siteye Aktarın
Süreçteki bir sonraki adım WordPress veritabanınızı içe aktarmaktır.
cPanel panonuza gidin, ‘Veritabanları’ bölümüne ilerleyin ve ‘phpMyAdmin’e tıklayın.
Bu sizi phpMyAdmin’e götürecektir, burada yukarıda oluşturduğunuz veritabanına tıklamak isteyeceksiniz. phpMyAdmin yeni veritabanınızı tablolar olmadan gösterecektir.
Ardından, üst menüdeki ‘İçe Aktar’ sekmesine tıklayın. İçe aktarma sayfasında, ‘Dosya Seç’ düğmesine tıklayın ve ardından ilk adımda kaydettiğiniz yerel sitedeki veritabanı dosyasını seçin.
Bundan sonra, sayfanın altındaki ‘Git’ düğmesine tıklayın. Veritabanınız otomatik olarak phpMyadmin’e aktarılacaktır.
Adım 5: Site URL’sini Değiştirin
Şimdi, canlı WordPress sitenize bağlanması için veritabanınızdaki site URL’sini değiştirmeniz gerekir.
phpMyAdmin’de, yukarıda içe aktardığınız veritabanınızdaki wp_options
tablosunu arayın.
Veritabanı önekinizi değiştirdiyseniz, wp_options
yerine {new_prefix}_options
olabilir.
Ardından, wp_options
öğesinin yanındaki ‘Gözat’ düğmesine tıklayın. Ya da wp_options
tablosundaki alanların bir listesini içeren sayfayı açmak için kenar çubuğundaki bağlantıya tıklayın.
Ardından, options_name
sütununda siteurl
seçeneğini aramanız gerekir.
Ardından, ‘Düzenle’ simgesine tıklayın.
Bu, alanı düzenleyebileceğiniz bir pencere açar.
option_value
giriş kutusunda, yerel yüklemenizin URL’sini göreceksiniz; bu URL http://localhost/test
gibi bir şey olacaktır.
Bu alana yeni sitenizin URL’sini girmeniz gerekir, örneğin: https://www.wpbeginner.com
.
Ardından, ‘Git’ düğmesine tıklayarak alanı kaydedebilirsiniz.
Ardından, ana
sayfa seçeneği adı için yukarıdaki adımların aynısını izlemeniz gerekir. wp_options
menüsü birkaç sayfa uzunluğunda olabilir. Genellikle, ana
sayfa seçeneği ikinci sayfada olacaktır.
Ardından, ana
sayfa URL’sini güncelleyin, böylece canlı site URL’nizle aynı olur.
Adım 6: Canlı Sitenizi Kurun
Veritabanını içe aktardığınıza ve içeriğinizi yüklediğinize göre sıra WordPress’i yapılandırmaya geldi.
Şu anda sitenizde‘Veritabanı bağlantısı kurulurken hata oluştu’ hatası görünüyor olmalıdır.
Bunu düzeltmek için, bir FTP istemcisi kullanarak web sitenize bağlanın ve wp-config.php
dosyasını açın.
Aşağıdaki kod satırlarını arıyor olacaksınız:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );
/** MySQL database username */
define( 'DB_USER', 'username_here' );
/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
Daha önce oluşturduğunuz veritabanı adını, kullanıcı adını ve parolayı sağlamanız gerekecektir.
Ardından, wp-config.php
dosyasını kaydedin ve WordPress barındırma sunucunuza geri yükleyin.
Şimdi, web sitenizi ziyaret ettiğinizde canlı olması gerekir.
Bundan sonra, WordPress yönetici panelinize giriş yapmanız ve Ayarlar ” Genel bölümüne gitmeniz gerekir. Ardından, hiçbir şeyi değiştirmeden en alta kaydırın ve ‘Değişiklikleri Kaydet’ düğmesine tıklayın.
Bu, sitenizin URL’sinin olması gereken başka bir yerde düzeltilmesini sağlayacaktır.
Bunu yaptıktan sonra, Ayarlar ” Kalıcı Bağlantılar’a gidin, ardından aşağı kaydırın ve tüm gönderi bağlantılarının düzgün çalıştığından emin olmak için ‘Değişiklikleri Kaydet’e tıklayın.
Adım 7: Yolları Güncelleyerek Görüntüleri ve Bozuk Bağlantıları Düzeltin
Bir WordPress sitesini bir etki alanından diğerine veya yerel bir sunucudan canlı bir siteye taşıdığınızda, kırık bağlantılar ve eksik görüntülerle karşılaşırsınız.
URL’leri güncellemek için size iki yol göstereceğiz. Sizin için en uygun olanı seçebilirsiniz.
1. Search & Replace Everything Eklentisini Kullanarak URL’leri Güncelleyin (Önerilen)
Bunu düzeltmenin en güvenli yolu Search & Replace Everything kullanmaktır. Karmaşık veritabanı sorguları yazmadan web sitenizde toplu güncelleme görevlerini kolayca gerçekleştirmenizi sağlayan güçlü bir WordPress eklentisidir.
İlk olarak, Search & Replace Everything eklentisini yüklemeniz ve etkinleştirmeniz gerekir.
Etkinleştirmeden sonra Araçlar ” WP Search & Replace sayfasına gidin.
Buradan, yerel site URL’nizi ‘Ara’ alanına ve canlı site URL’nizi ‘Şununla değiştir’ alanına girmeniz gerekir.
Biraz kaydırın ve tabloların altındaki ‘Tümünü Seç’ seçeneğine tıklayın. Bu, eklentinin veritabanındaki her yerde eski URL’yi aramasını sağlar.
Şimdi devam etmek için ‘Arama ve Değiştirmeyi Önizle’ düğmesine tıklayın.
Eklenti, veritabanınızda eski URL’nin tüm örneklerini arayacak ve ardından sonuçları önizleyecektir.
Her şey iyi görünüyorsa, değişiklikleri kaydetmek için ‘Tümünü Değiştir’e tıklayın.
Yaptığınız değişiklikler hakkında bir uyarı göreceksiniz. Devam etmek için ‘Evet’e tıklayın.
Eklenti şimdi veritabanını güncelleyecek ve yerel URL’leri mevcut web sitenizin URL’si ile değiştirecektir.
2. URL’leri Manuel Olarak Güncelleme (Gelişmiş)
URL’leri güncellemenin bir başka yolu da aşağıdaki SQL sorgusunu kullanmaktır:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'localhost/test/', 'www.yourlivesite.com/');
Basitçe phpMyAdmin‘e gidin, veritabanınıza tıklayın ve ardından üst menüden ‘SQL’e tıklayın ve yukarıdaki sorguyu ekleyin.
Yerel siteniz ve canlı site URL’leri olarak değiştirdiğinizden emin olun ve ‘Git’ düğmesine tıklayın.
İşte bu kadar. Artık WordPress’i yerel sunucunuzdan canlı bir siteye başarıyla geçirdiniz.
Umarım canlı web siteniz sorunsuz bir şekilde çalışır. Herhangi bir hata fark ederseniz, sorun giderme konusunda yardım almak için yaygın WordPress hataları kılavuzumuza göz atabilirsiniz.
Umarız bu makale WordPress’i yerel bir sunucudan canlı bir siteye taşımanıza yardımcı olmuştur. Ayrıca canlı bir siteyi yerel bir sunucuya taşıma kılavuzumuzu görmek veya pratik WordPress taşıma adımları için nihai web sitesi taşıma kontrol listesine bakmak isteyebilirsiniz.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Axel
I love this entry, I use it as a checklist every time I make a migration.
WPBeginner Support
Hey Axel,
Glad you find it useful Don’t forget to join us on Twitter for more WordPress tips and tutorials.
Yönetici
Gary
I keep getting stopped at step 4. when I import my datatbase I get the following error
#1231 – Variable ‘character_set_client’ can’t be set to the value of ‘NULL’
I only have limited sql knowledge and never done anything like this before. any help/guidance would be greatly appreciated
Andrew
Hello,
So I got to step 6 without any issues until my website failing to become live. I went into my wordpress general setting and my site url was still a localhost. Am I suppose to change the site url before I upload it into the ftp program and into my host, or can i leave that as localhost? Or, do i change the site url in wordpress after i’ve uploaded my files into my hosting site?
This page was super helpful, thanks!
Daneesh
Hi. Thanks so much for this, excellent tutorial. I seem to have got stopped at Step 6. I am still getting a “Error establishing database connection” error. DO i need to change the hostname field in the config.php too? and what do i change that to?
Simon
Amazing, it worked, thank you.
sornanun
Thank you very much.
Annete Momanyi
Thank you for the article. I have managed to sort my problem after following these steps.
Arash
Hello there,
I have two questions and I’d be grateful if you could help me!
1) Why do I have two ht-docs and wp-content folders inside my WordPress folder?
2) When I move my WordPress website from a localhost to the live host, It’s possible to remove my localhost or should I keep it forever?
Thanks in advance!
Matze
1) By installing WordPress on your hosted server, these docs/folders will be automatically added. I think while uploading your files from local to live via FTP __ht-docs__ and __wp-content__ just weren’t replaced.
But please check your local files which are normally located in the WAMP/MAMP folders unter __htdocs__ . Are there also two copies of the datas? Then you should find out, which one is the right one …
2) At the time uploading your files from local to live, the local datas are a backup. After some weeks, changing and editing your live site on the server you can delete the locals.
But you should create a backup regular and store the datas local (Quote: “If you are doing this on a regular basis, then we highly recommend that you get BackupBuddy because it will make your life easy. You will thank us for that later”)!
Hope it helps
Starfleet Nnaemeka
Wow! What a wonderful tutorial , seriously i really appreciate the effort you guys brought out to write these tutorial. Thanks it really helped me to set up my website build on wordpress from localhost on wampserver.
Leo Laroche
i have followed all the steps, but when i type in my website the old website comes up. Can someone help me please.
rachel asakome
i have followed steps 1-5, but i am not sure where my site is. sorry it sounds really dumb but i am not great with technology. I have uploaded the files, but when i type in my website the old website comes up
Justas
server DNS address could not be found.
ERR_NAME_NOT_RESOLVED
I changed everything accordingly, but still can’t connect.
Carrie
Could you please explain on how to do this with webmatrix? I have a PC and my wordpress install on my local PC was with webmatrix. I do not have a MAC. Where on webmatrix do I export? I am confused about this. Also, you have create a db in cpanel my sql. Where do I save this new db? On the cpanel someplace or on my local pc hard drive and under what name? I have a domain with go daddy and a web hosting I purchased. They said to do a brand new fresh install of wordpress from there site…. why would I do this? I already have my wordpress via webmatrix on my local pc this is where the website I built resides. How do I get this on my web hosting? Confused on the db stuff and how to get my local wp files/db to my web host. Thank you.
Neo An
Very clear!
Thank you very much!
Milica
This is a great tutorial. Thanks a lot!
Amber
I have followed all of these steps and when I view my site it is showing my content like words and links but none of the decorative stuff or plugins etc. My menus are showing up as just a list of words as if I created a page without any real CSS. My CSS files are not missing so I do not know where the mess up is happening. I tried to do the part about fixing broken links and I am not 100% of what I should put after the localhost part. I used the name of the folder that my entire wordpress database/files/etc are in. I cannot seam to figure out what is going wrong.
Abdul
@AMBER and all those struggling with the same issue, the problem with the deployment process of WordPress’ database is due to the empirical replacement of your local URI with the live site’s URI as explained in this article at Step 7. If you just execute the UPDATE SQL statement as shown, you, most of the time, end up corrupting your database. Why? The reason is simple: WordPress has a way of serializing some metadata for its own convenience. This post explains it pretty well: nacin.com/2010/04/18/wordpress-serializing-data
If you look at this array:
array( ‘apple’, ‘banana’, ‘orange’ ),
when serialized it looks like this:
a:3:{i:0;s:5:”apple”;i:1;s:6:”banana”;i:2;s:6:”orange”;},
where:
– a:3 stands for “array of size 3”
– i:0; i:1; i:2 stand for “integer index 0; integer index 1; integer index 2″ respectively
– s:5:”apple” stands for “string, length 5, data=apple”
– s:6:”banana” stands for “string, length 6, data=banana”, etc.
As you can see, any serialized string is stored along with information about it’s length. So when you do a simple search and replace in your tables, all occurrences will be replaced indeed but the string’s length metadata won’t.
In the case your local URL’s length equals your live site’s URL length, then you’re lucky; if they don’t match then you’re in trouble.
The question now is: “How do I fix this?”. I’m happy to say that, fortunately, there are many plugins that can help you with this but one that’s really simple and good at it is “Better Search Replace”.
Simply install this plugin in your local WordPress installation and proceed as explained in this article. The only place where you can safely replace your local URL is in the wp_options table as explained at Step 5.
Once you’re done installing the plugin, in the admin panel, go to “Tools, Better Search Replace”, in the “Search” text box type your local site’s URL (e.g. http://localhost:12345) and in the “Replace with” text box, type your live site’s URL (e.g. http://www.example.com) and you should be ready to go. Just make sure you don’t include any trailing forward slash “/” in the URL (at the end like http://localhost:12345/ or http://www.example.com/)
I hope this explanation was useful and please let me know if it helped.
Happy coding!
Simon
Hi,
Brilliant article and very easy to follow.
However, as a WordPress virgin I am struggling with the whole concept of having a separate database from the website. I have created everything locally on my PC. But the local PHP Admin will allow me to use however many characters i like in naming my database but my remote server/host (123-reg) will only allow 9 (my original had 11) so…. the database name locally is different from the database name remotely. I have exported the database tables and imported them in to the remote database, renamed my wp-config to point to the new shorter database name with the correct user name and password but i am still getting the ‘Error establishing a database connection’
message. Any suggestions?
Could the fact that the tables are exported from a database with a different name from the one they are being imported to make a difference?
Gabriel
Hello I made all of your steps but I can see only a white page. It doesn’t notify me an error.
I upload everything in a subdirectory of my website. It’s because of that? Is there a solution?
Patrick Hasch
Great article, if the upload of zipped files doesn’t work try uploading .sql files instead.
Tony
I also faced the same problem.
John James
Hello. From your step 6, you said we should change database name, user and password. Are we supposed to change the hostname too?
WPBeginner Support
See step 3 to find out your hostname and use that instead.
Yönetici
John
Step 3 says nothing about host names.
WPBeginner Support
When you are creating a database on your webhost, you will be able to see the hostname. If you don’t then this means you are using localhost.
Mohd Hasan
i followed all steps but going to install.php page , someone can help me , i really need your help
Gabor
Hello!
i have 500 internal error on server.
I think the problem is with .htaccess.
Can u help in this?
Dawn
I am having this same issue. I followed every step exactly, I fixed the wp-config.php file and re-uploaded it, but now when I go to my live site it says,
“This page isn’t working
[my site] is currently unable to handle this request.
HTTP ERROR 500”
Dawn
I should have said that that is the error I get when I try to go to my wp-admin. When I go to the site itself it’s blank.
Axel
The solution for image references is to execute the following scripts on your DB:
(I can’t write the real scripts because wpbeginner.com thinks I’m doing SQL injection :\ )
UPDATE wp_posts to set the value of column guid to the value of function REPLACE(guid, ‘http://old.site.url’, ‘http://new.site.url’)
AND
UPDATE wp_postmeta to SET the value of column meta_value to the value of function REPLACE(meta_value, ‘http://old.site.url’, ‘http://new.site.url’)
Also don’t forget to check permissions for wp-content/uploads to ensure you can add more images.
Aimy
Hi,
Thanks for this. I did everything as you described. It seemed that everything went well apart the front page that shows nothing but just the navigation menu.
When I go to the page builder of the front page it shows that there is nothing added there.
Any advice?
Krishna
Dear wpbeginner owner
Its working for me !
thank you very much!
Philippe
Damn I’m so lucky wpbeginner exists, I’ve finally managed to get my website to work thanks to this post, I had to fight my way trough (there is an older database-version on my webhosts server) but I did it thanks to you guys!
Umai Hassan
URL Changing
I have changed the URL in wp_option table but only home page loads correctly other pages links are still set to localhost/something ??
What should I do to change all links??
Cos
Brilliant article – thanks! Got through the process without a hitch first-off :-)))
Dan Odaka
Hey, after doing all that, when I go to my site I get a page that shows me the index of wordpress and not my site. what do I do?
WPBeginner Support
This could happen due to an incomplete file transfer. Try to upload your WordPress files again.
Yönetici
Sonja
Hi. thank you very much for this post. It seems to be very helpful and I’ve tried to follow every step, but now that I’m done, when I go to my URL I get a “Server not found” error (The host shows me a preview with “under-construction” and their logo, which was online before I uploaded the data and database – shouldn’t I at least get that?). Do you have any ideas where I might have gone wrong, and is it best to delete everything and start again from scratch, or overwrite it, or look for any particular errors?
Thank you for any help!
WPBeginner Support
You may have installed WordPress outside your public directory.
Yönetici
Hugues Pinsonneault
im wondering if you have any recommendation for developing locally new functionalities on a local dev install, while the client can still do updates on the real database.
shah
Hi
Thankyou for the details, but i am still not able to get the path of images correct inspite of the changes done … i have my folders in public_html and have my db created …my live website is working fine except for the pic / logos
zarna
My wordpress site went live but my images are not getting replicated and they aren’t visible. Can you please guide me what should be the images folder structure while uploading it to live ??
Your help and guidance would be appreciable.. Thank you.
Coil McCoy
Great post !!!
Only the last part doesn’t worked for me, the pictures and links still missing !
Any clue?
thank you
Vinish Chaudhary
Hello,
All great beside this You don’t have permission to access / on this server.Don’t know why it is showing when I try to access my site.I have done all steps like you said but getting this error can anyone please help me to solve this problem.
Sudais
Instead of this long way,I use a plugin called wp all in one migration,I just need to import a single file using a plugin when I go live and all done,no playing with databases,etc.I think everyone should do that saves alot of time and handywork.
hiren
can u put the demo ..
thanks.
hiren patel.
Paul
Great article ! But I’m still stuck at the last step. Images aren’t showing on my website.
Well in fact they does, but only on my PC. Everybody else is getting a buggy website.
Farooq Bashir
Wow .. Great Article sir
Its Perfect Working.
Thanks
Bikram Ray
Hi,
No doubt; a very useful article. But I got stuck in the last step. I ran the SQL update query but still having issues regarding image path.
Just one thing; while uploading the file through FTP, I did not upload the wordpress folder (the test folder) rather I uploaded whatever inside it.. So in the server there is only the folders and files directly placed under ‘public_html ‘
Regards,
Bikram
Kay
DIDN’T WORK!!
Error
SQL query:
—
— Database: `wordpress`
—
CREATE DATABASE IF NOT EXISTS `wordpress` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
MySQL said: Documentation
#1044 – Access denied for user ‘ksalim’@’localhost’ to database ‘wordpress’
WPBeginner Support
Please check your database name, mysql username and password.
Yönetici
Damilola
A very awesome article, it really made a project i was working on for a client already on my local machine easy to move to his server, i mean i literally tried to develop the website all over again and it was such a pain in the ass….Thank you
WPBeginner Support
Glad you found it helpful. Don’t forget to join us on Facebook for more WordPress tips and tutorials.
Yönetici
Tim Vincent
Thank you so much for this guide. I struggled doing this for some time before finding this. I followed it word for word and all seems to work. I am very grateful!
WPBeginner Support
We are glad you found it helpful. Don’ forget to follow us on Twitter for more WordPress tips and tutorials.
Yönetici
sonu
hello! syed
i want to ask you to from where i get the best free wordpress simple attractive theme which laterly i planned to upload on the live server….any help would be much appreciated….thanks…
WPBeginner Support
See our list of 37 simple WordPress themes you should try.
Yönetici
sonu
hello! syed
i want to ask you when we upload the worpress site from locahost to live server….i just want to ask the wordpress having lot of files and inside the wp-content/themes/… having three different types of theme like twenty fourteen,twenty thirteen ,so is it needed to upload all these themes or not….help would be much appreciated…..thnks…..
Ridhik
No,u just upload the theme folder that currently activated in your site.
Andres Paz Soldan
Thank you! This was very useful!
WPBeginner Support
Hi Andres, glad you found it useful.
Yönetici
Lellys
First of, thank you!
I did everything and my site is working, but when I need to login on my wp-admin, it show me a blank screen and nothing happens. Any idea?
paddy lutaaya
thank you for this article i have followed the steps and uploaded my website to c panel but it has failed to work it brings internal error please help me solve this thank you
WPBeginner Support
Please see our guide on how to fix internal server error in WordPress.
Yönetici
Phillip Pilkington
Allgreat advise except step 6. I have not got past this stage, the advice is not clear. My website shows the Error Establishing Database Connection. This next part doesn’t explain anything to me.
“To fix this, connect to your website using an FTP client and edit wp-config.php file. Provide the database name, user and password you created earlier in Step 3. Save the wp-config.php file and upload it back to your server. Visit your website, and it should be live now. ”
I am connect via ftp, then just edit the file….no, nothing happens from here.I open the file in aneditor but I don’t make any changes because it does not show anything about whatis expalined.
Regards,
Tyler Hall
Hey, I am currently transferring the files as we speak. Not sure if you found a solution yet (hopefully you have its been 15 days) but you should probably change the hostname: /** MySQL hostname */
define(‘DB_HOST’, ‘ ‘ your hostname before should have been your localhost or similar.
Himanshu
Thanks for the post. Really helped solve my problem. Although I faced some issues with database importing. After much effort, updating the phpmyadmin version fixed it for me. If possible you could also include common errors in each section, so that a beginner doesn’t get lost. As it happens, most likely you are going to face some error here and there. Other than that great post. Thanks.
WPBeginner Support
@Himanshu Thanks for the Feedback, we really appreciate it.
Yönetici
Ola
Hi,
Thanks for this, the steps are so direct and you made WordPress uploading fun.
Andy
Hi. When I go to my website it says Welcome to: yourwebsite.com
This Web page is parked for FREE, courtesy of GoDaddy.com. Do I have to register my domain? I just thought of a random website name to put in for the changing site url step 5. Also when I enter the local host site I get the message the webpage could not be found. What should I do?