En çok ihtiyaç duyduğunuzda güvenilir WordPress eğitimleri.
WordPress Başlangıç Rehberi
WPB Kupası
25 Milyon+
Eklentilerimizi kullanan web siteleri
16+
Yıllık WordPress deneyimi
3000+
Uzmanlardan WordPress eğitimleri

WordPress'te JSON REST API Nasıl Devre Dışı Bırakılır

Yakın zamanda bir okuyucudan sıkça duyduğumuz bir soru aldık: “WordPress sitemde REST API'yi nasıl devre dışı bırakabilirim?” Ve dürüst olmak gerekirse, bu geçerli bir endişe.

WordPress sürüm 4.4, JSON REST API ile yayınlandığında, geliştiriciler için bir olasılıklar dünyası açtı.

Ancak, bu gelişmiş özelliklere ihtiyaç duymayan birçok site sahibi için API, gereksiz bir ekleme gibi görünebilir ve potansiyel olarak sitelerini güvenlik risklerine maruz bırakabilir.

Bu makalede, JSON REST API'yi WordPress'te nasıl kolayca devre dışı bırakacağınızı göstereceğiz.

WordPress'te JSON REST API'yi Devre Dışı Bırakma

WordPress'te JSON REST API Neden Devre Dışı Bırakılmalı?

API'nin WordPress geliştiricileri için pek çok faydası olduğu yadsınamaz. API, GET istekleri kullanarak verileri almak çok kolaylaştırır, bu da WordPress ile uygulama geliştirenler için kullanışlıdır.

Bununla birlikte, bu durum web sitenizi yeni bir DDoS saldırısı cephesine açabilir. Ayrıca kaynak yoğun olabilir ve WordPress web sitenizi yavaşlatabilir.

JSON REST API'yi devre dışı bırakmak, birçok site yöneticisinin güvenlik açısından WordPress sitelerinde devre dışı bıraktığı XML-RPC'yi devre dışı bırakmaya benzer.

Bununla birlikte, WordPress'te JSON REST API'yi kolayca devre dışı bırakmak için size iki yöntem göstereceğiz. Kullanmak istediğiniz yönteme atlamak için aşağıdaki hızlı bağlantıları kullanmanız yeterlidir:

Method 1. Disabling JSON REST API in WordPress with Code (Recommended)

WordPress işlevselliğini değiştirmeye gelince, kod parçacıkları kullanmak genellikle en iyi yaklaşımdır. Ancak, temanızın functions.php dosyasını doğrudan düzenlemek riskli olabilir ve doğru yapılmazsa sitenizi bozabilir.

Bu nedenle, WordPress'te JSON REST API'yi devre dışı bırakmak için WPCode eklentisini kullanmanızı öneririz.

Kendi web sitelerimizde tema dosyalarını düzenlemeden özel kodu güvenli bir şekilde eklemek için kullandığımız aynı eklenti.

Eklentiyi nasıl kullandığımız hakkında daha fazla bilgi edinmek için tam WPCode incelememize bakın.

WPCode

Ayrıca WPCode, REST API'yi devre dışı bırak, XML-RPC'yi devre dışı bırak gibi popüler özellik istekleri için doğrulanmış kod parçacıkları içeren yerleşik bir kod kütüphanesine sahiptir ve çok daha fazlası.

Bu, farklı görevler için birden fazla tek kullanımlık eklenti yüklemekten sizi kurtarır.

Başlamak için ücretsiz WPCode eklentisini yüklemeniz ve etkinleştirmeniz gerekir. Adım adım talimatlar için, bir WordPress eklentisinin nasıl kurulacağına ilişkin kılavuzumuza bakın.

Not: WPCode'un ücretsiz sürümü, WordPress'e özel kod eklemek için ihtiyacınız olan her şeye sahiptir. Ancak, özel bir bulut parçacıkları kütüphanesi, sayfa ve cihaza özel parçacıklar, kod revizyonları ve daha fazlası gibi gelişmiş özellikler istiyorsanız, WPCode Pro'ya yükseltebilirsiniz.

Eklenti etkinleştirildikten sonra, WordPress kontrol panelinizden Kod Parçacıkları » Kitaplık bölümüne gidin.

Ardından, ‘WordPress REST API'yi Devre Dışı Bırak’ kod parçasını arayın ve ‘kod parçasını kullan’ düğmesine tıklayın.

WPCode'da WordPress REST API'yi Devre Dışı Bırak'ı seçin

Eklenti daha sonra kodu sizin için otomatik olarak ekleyecek ve uygun ekleme yöntemini de seçecektir.

WPCode, JSON REST API'yi Devre Dışı Bırak kod parçacığını otomatik olarak ekler

Yapmanız gereken tek şey anahtarı 'Etkin Değil' konumundan 'Etkin' konumuna getirmektir.

Ardından, 'Güncelle' düğmesine tıklayın.

Kod parçacığını Etkin olarak değiştirin ve WPCode'da Güncelle'ye tıklayın

İşte bu kadar. Artık WordPress sitenizde JSON REST API devre dışı bırakıldı.

Yöntem 2. Bir Eklenti ile WordPress'te JSON REST API'yi Devre Dışı Bırakma

Özel bir eklenti yardımıyla JSON REST API'yi kolayca devre dışı bırakabilirsiniz.

Yapmanız gereken ilk şey, REST API'yi Devre Dışı Bırak eklentisini yüklemek ve etkinleştirmektir. Daha fazla ayrıntı için, WordPress eklentisi yükleme hakkındaki adım adım kılavuzumuza bakın.

Eklenti kutudan çıktığı gibi çalışır ve yapılandırmanız gereken herhangi bir ayar yoktur.

Etkinleştirildiğinde, eklenti web sitenize giriş yapmamış kaynaklardan gelen herhangi bir API isteğine kimlik doğrulama hatası döndürecektir.

Bu, yetkisiz isteklerin REST API'yi kullanarak web sitenizden bilgi almasını etkili bir şekilde engelleyecektir.

Bunu http://example.com/wp-json sayfasını ziyaret ederek test edebilirsiniz. Öncelikle WordPress yönetici alanından çıkış yaptığınızdan veya tarayıcınızı gizli moda aldığınızdan emin olun.

example.com'u kendi alan adınızla değiştirmeyi unutmayın. REST API isteklerinin engellendiğini belirten bu mesajı göreceksiniz.

REST API Devre Dışı

Hepsi bu kadar, WordPress sitenizde yetkisiz REST API isteklerini başarıyla devre dışı bıraktınız.

WordPress REST API'sini devre dışı bırakmak yerine, yalnızca REST API bağlantılarını devre dışı bırakmayı seçebilirsiniz. Bu, REST API'yi tamamen kapatmadan API uç noktalarını WordPress sitenizin kaynak kodundan gizler.

Bu yöntemle, tüm WordPress özelliklerini normal şekilde çalışır durumda tutarken uç noktaları bulmayı zorlaştırarak güvenliği artırabilirsiniz. REST API'ye işlevsellik için ihtiyaç duyan temaları veya eklentileri bozmadan güvenlik eklediği için geliştiriciler arasında popüler bir seçimdir.

Bunu yapmak için WPCode eklentisini yüklemeniz ve etkinleştirmeniz gerekir. Yardım isterseniz, bir WordPress eklentisinin nasıl kurulacağına dair eğitimimize bakın.

Etkinleştirme sonrasında WordPress kontrol panelinizden Kod Parçacıkları » Kitaplık bölümüne gidin.

Oradan, ‘REST API Bağlantılarını Devre Dışı Bırak’ kod parçacığını arayın. Bulduğunuzda, üzerine gelin ve ‘Kod parçacığını kullan’ düğmesine tıklayın.

WPCode kütüphanesinden REST API'yi Devre Dışı Bırak Bağlantıları kod parçasını ara

Bundan sonra, WPCode kod parçacığını otomatik olarak ekleyecek ve uygun ekleme yöntemini seçecektir.

WPCode, REST API bağlantılarını devre dışı bırakmak için kodu ekleyecektir

Şimdi yapmanız gereken tek şey geçişi 'Etkin Değil'den 'Etkin'e getirmek.

Lastly, hit the ‘Update’ button.

Kod parçacığını Etkin olarak değiştirin ve WPCode'da Güncelle'ye tıklayın

İşte bu kadar basit. Artık WordPress web sitenizde REST API bağlantıları devre dışı bırakılacak.

Umuyoruz ki bu makale, WordPress'te JSON REST API'yi nasıl devre dışı bırakacağınızı öğrenmenize yardımcı olmuştur. Güvenlik bilincine sahip kullanıcılar ayrıca WordPress yönetici alanını korumaya yönelik bu ipuçlarını veya en iyi WordPress yedekleme eklentileri hakkındaki uzman seçimlerimizi de incelemek isteyebilirler.

Bu makaleyi beğendiyseniz, lütfen WordPress video eğitimleri için YouTube Kanalımıza abone olun. Bizi ayrıca Twitter ve Facebook'ta da bulabilirsiniz.

Açıklama: İçeriğimiz okuyucu desteklidir. Bu, bazı bağlantılarımıza tıklamanız durumunda komisyon kazanabileceğimiz anlamına gelir. WPBeginner'ın nasıl finanse edildiğini, neden önemli olduğunu ve bize nasıl destek olabileceğinizi görün. İşte editöryal sürecimiz.

Nihai WordPress Araç Seti

Araç Kitimize ÜCRETSİZ erişim kazanın - her profesyonelin sahip olması gereken WordPress ile ilgili ürün ve kaynaklardan oluşan bir koleksiyon!

Okuyucu Etkileşimleri

41 CommentsLeave a Reply

  1. Özellikle belirttiğiniz iki yöntemi, özellikle de WPCode'u kullanan kod tabanlı yaklaşımı takdir ediyorum. Bir site sahibi olarak, API'nin faydaları nedeniyle onu devre dışı bırakmaktan çekiniyordum, ancak potansiyel güvenlik riskleri hakkındaki açıklamanız beni yeniden düşünmeye sevk etti.
    WPCode eklentisi ve özel kod parçacıklarını güvenli bir şekilde yönetme yeteneği beni ilgilendiriyor. Tek kullanımlık eklentilerle sitemi karıştırmadan diğer WordPress özelleştirmelerini uygulamak için bu aracı kesinlikle daha fazla araştıracağım.
    Bunun için teşekkürler. WPBeginner EN İYİSİ!

  2. WordPress'te JSON REST API'yi devre dışı bırakma konusundaki bu eğitimin netliğini takdir ediyorum. Ancak, web sitesi işlevselliği ve diğer hizmetlerle entegrasyon için potansiyel faydaları göz önüne alındığında, API'yi tamamen devre dışı bırakmanın en iyi yaklaşım olup olmadığını merak ediyorum.

    • Site sahibinin ihtiyaçları için en iyisi olup olmadığına veya kullanırken bir sorunla karşılaşıp karşılaşmadığına bağlı olacaktır.

      Yönetici

      • Teşekkürler. Sahibinin benzersiz ihtiyaçlarını ve koşullarını göz önünde bulundurarak JSON REST API'nin potansiyel güvenlik risklerini faydalarına karşı tartmanın önemli olduğunu düşünüyorum.

    • Hi Dayo Olobayo,
      The question is more about whether you use this API or not. It’s the same as with XML-RPC. I don’t use it on my website, so I deactivated it. Of course, this means I can’t connect to the website using, for example, the WordPress mobile app, which uses XML-RPC to connect. It is always a compromise between what you want to disable and what you want to allow. Any API that accepts external requests can be a potential risk, and it’s simply a matter of whether you want to use it or not.

  3. Kurulumun bazı özellikleri bozduğunu fark ettim, bu yüzden üretim ortamından önce geliştirme ortamında devre dışı bırakma eklentisini denerdim.

    • Birçok farklı eklentiniz ve aracınız varsa ve bir test ortamınız varsa, yeni eklentileri ve sitenizle nasıl etkileşimde bulunduklarını test etmek kesinlikle iyi olacaktır.

      Yönetici

  4. Yukarıdaki bir yorumcuya benzer şekilde, Pingdom ve diğer test sitelerini kullanırken "wp-json" isteğini fark ettim. Ne yazık ki, benim yüklenmesi 10 saniyeden fazla sürüyor (Evet gerçekten!!). Bu, genel web sitesi yükleme süremizi artırıyor ve bunu nasıl düzelteceğimi anlayamıyorum. Eklenti bunu hiç değiştirmiyor. Herhangi bir öneriniz var mı?

  5. Web sitemde gerçekten JSON API olup olmadığını nasıl anlarım?
    Bu makale, eğer ihtiyacım olursa diye JSON API'yi kaldırma hakkında iyi bilgiler veriyor – ancak birçok kez belirli uyarılar beni endişelendirdi ve sonra bunların benim için geçerli olmadığını fark ettim.

  6. Basit bir görev için başka bir eklenti eklemekten nefret ediyorum ve bu işlevi functions.php dosyasına aşağıdaki kod parçasını ekleyerek devre dışı bırakabileceğimizi buldum.

    add_filter(‘rest_enabled’, ‘_return_false’);
    add_filter(‘rest_jsonp_enabled’, ‘_return_false’);

    • Muhtemelen WordPress.com kullanıyorsunuz. Kendi barındırdığınız WordPress.org ile ücretsiz WordPress.com blog arasındaki fark hakkındaki rehberimize bakın.

      Yönetici

  7. Bu sadece kendi kendine barındırılan bloglar için mi yoksa ücretsiz blog sitelerini de kapsıyor mu? Çoğu eklenti… vb. kendi kendine barındırılmıyorsanız sizin için yapılmıştır.

    Not: Abone olmuyorum… sadece bir yanıt istiyorum

  8. Sitemde REST API olup olmadığını nasıl kontrol edebilirim. Kurulumun başında birçok ekstra özelliği kapattım ama şimdi orada olup olmadığını görmek için nereye bakacağımı bilmiyorum. Gereksiz yere bir eklenti indirmek istemiyorum.

    • Hey Elaine,

      REST API'nin sitenizde etkin olup olmadığını, example.com/wp-json gibi bir URL'yi ziyaret ederek kontrol edebilirsiniz. Bunu yapmadan önce WordPress'ten çıkış yaptığınızdan emin olun. Düz metin halinde çok fazla bilgi görürseniz, bu REST API'nin sitenizde etkin olduğu anlamına gelir. Kapatmak için yukarıdaki talimatları izleyin.

      Yönetici

  9. Jetpack eklentisinde json rest api'yi devre dışı bırakma seçeneği ne olacak?

  10. REST API'yi devre dışı bırakmak WooCommerce gibi e-ticaret siteleri için uygun mu? Anladığım kadarıyla WooCommerce REST-API'yi oldukça fazla kullanıyor.

    Ayrıca, alıcılarımın satın almak için giriş yapmaları gerekmiyor, bu nedenle bir REST API çağrısı reddedilirse işlem ne olur?

    Saygılarımla, Ken

  11. Plug-in makes no difference for me in WP 4.7.2. With the plugin activated or disabled, the example.com/wp-json (with my domain replacing “example”) pages gives a massive list of settings for my site.

    • Hmmmm. Now that I look at it, I only see the list in Safari, while Chrome and Firefox for Mac show the expected message specified in this post.

    • Merhaba,

      Make sure you are logged out of WordPress admin area or use incognito mode before testing the example.com/wp-json page. The plugin disables access to the page only for unauthorized users. As an administrator you will still be able to see it.

      Yönetici

  12. Merhaba Millet,

    Öncelikle yaptığınız iş için çok teşekkürler! Sizden Wordpress hakkında çok şey öğrendim ve bir sürü kişiyi size yönlendirdim!!

    Tamam, eklentiyi kurdum ama yukarıda önerdiğiniz şeyi göremiyorum? Tam ekran bilgi mi var…?

    Düşünceler?

    Teşekkürler!

    • Merhaba Audra,

      Lütfen çıkış yapın veya test etmek için gizli pencere kullanın. Eklenti yalnızca oturum açmamış kullanıcılar için erişimi devre dışı bırakır.

      Yönetici

  13. Bu adımları izledim, ancak örnek vb. ile kontrol etmeye gittiğimde, yukarıda gösterilen yanıt yerine 2 sayfa kod aldım. Hmmm, ne yapacağımı bilmiyorum.

  14. Testi çalıştırdığımda başarısız olduğunu düşünüyorum, çünkü ekranda bir sürü veri gördüm. Neyin çalışmamış olabileceğine dair bir fikriniz var mı? Eklentiyi tarif edildiği gibi kurdum…

    • Gizli pencere kullanarak kontrol ettiğimde mükemmel çalışıyor. Yetkili ve yetkisiz veya anonim kullanıcılar hakkındaki açıklama için teşekkürler.

  15. XMLRPC'yi devre dışı bırakmak için verdiğiniz ipucu ve kanca için teşekkürler.
    REST API için de bir filtre kancası olasılığı var mı?

  16. Sitemin hızını pingdom.com kullanarak kontrol ettiğimde, yüklenmeye çalışan ilk html girişi bağlantıyı mydomain.com/wp-json olarak gösteriyor ve 2 saniyeden fazla "bekleme" süresi var. Bu, makalenin bahsettiği şeyle aynı mı? Gelecekte kullanılacağını varsaydığım için onu devre dışı bırakmakta tereddüt ediyorum. Sayfadaki herhangi bir şeyi yüklemeye 2+ saniyelik bir gecikme eklemesinin nedeni hakkında bir fikriniz var mı?

  17. Hmm, REST API, eklentiler ve temalar için arka uca Ajax çağrıları yapmak üzere varsayılan yöntem haline gelecek, admin-ajax'ın yerini alacak, bu yüzden onu devre dışı bırakmazdım… Umarım zarif bir şekilde başarısız olurlar, ancak bazı işlevleri kaçıracaksınız.

    Also, if you really want to protect against DDoS attacks, you better disable html as well! ;)

    • WordPress REST API'de keşfedilen büyük bir güvenlik açığı nedeniyle 50.000'den fazla WordPress web sitesi hacklendi.

      • AH!

        Bunu bilmek rahatsız edici. Sitemin günlüklerinde ÇOK sayıda erişim girişimi fark ettim.

        Dahası,

        Bence WordPress'teki yetkililer, REST API'nin ne kadarının, hatta hiç açılıp açılmayacağının kararını kullanıcılara bırakma konusunda biraz daha iyisini yapabilirdi.

        Tekrar,

        Bunun daha fazlası, “Geliştiriciler kullanıcının ihtiyaçları hakkında kullanıcıdan DAHA FAZLASINI biliyor!” – Ayrıca, sitelerim kullanmasa da EMOJI ve fonts.google.com'dan uzaktan yüklenen yazı tiplerini desteklemek zorunda kalmaktan pek hoşlanmadım!

        REST API, (bazı) gerçek web uygulaması geliştiricileri için bir nimet olabilir, ancak bunu pek kullanmayacak diğerleri için ne demeli? ? ?

  18. How likely is it that a plugin will be using this functionality. Just for example would contact forms be utilizing this? Not keen on turning it off in case it breaks anything.

Cevap Bırakın

Yorum bırakmayı seçtiğiniz için teşekkürler. Lütfen tüm yorumların yorum politikamıza göre denetlendiğini ve e-posta adresinizin YAYINLANMAYACAĞINI unutmayın. Lütfen isim alanında anahtar kelime KULLANMAYIN. Kişisel ve anlamlı bir sohbet edelim.