WordPress Bakım Modu Nasıl Açılır? Eklentili ve Eklentisiz Yöntemler

  • Konuyu Başlatan Konuyu Başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi

Admin

Webmaster
Admin
Kurumsal+
Puan 18
Çözümler 0
Katılım
3 Kas 2025
Mesajlar
99
Tepkime puanı
0

WordPress Bakım Modu Nasıl Açılır? Eklentili ve Eklentisiz Yöntemler​

WordPress sitenizde kapsamlı bir değişiklik yaparken ziyaretçilerin bozuk sayfalarla veya tamamlanmamış bir tasarımla karşılaşmasını istemezsiniz. Bakım modu, bu süreçte normal içerik yerine kısa bir bilgilendirme ekranı göstermenizi sağlar.
Ancak bakım ekranının görünmesi tek başına yeterli değildir. Yönetici erişiminin açık kalması, önbelleğin doğru yönetilmesi ve ziyaretçilere uygun HTTP yanıtının verilmesi de önemlidir.
Bu rehberde bakım modunu açmanın üç yöntemini, aralarındaki farkları ve siteyi yeniden yayına alırken kontrol edilmesi gerekenleri anlatacağız.

WordPress Bakım Modu Nedir?​

Bakım modu, sitenin tamamını veya belirli bölümlerini geçici olarak ziyaretçilere kapatıp yerine bir açıklama göstermektir. Tema düzenlemeleri, güncelleme sorunları ve taşıma işlemleri sırasında kullanılabilir.
WordPress’in güncellemelerde kullandığı yerleşik bakım mekanizmasıyla, eklentiler üzerinden hazırlanan bakım sayfaları aynı şekilde çalışmaz.
Yerleşik mekanizma genellikle yönetici dahil WordPress üzerinden gelen istekleri durdurur. Bir bakım eklentisi ise yetkili kullanıcıların siteye erişmesine izin verirken ziyaretçilere farklı bir ekran gösterebilir.
Bakım modu, yedekleme veya test ortamının yerine geçmez. Büyük değişiklikleri önce sitenin ayrı bir test kopyasında hazırlamak, canlı sitenin kapalı kalacağı süreyi azaltır.

Bakım modu ile “çok yakında” sayfası arasındaki fark​

Bakım modu, yayındaki bir sitenin geçici olarak kullanılamadığını bildirir. “Çok yakında” sayfası ise henüz açılmamış bir projenin tanıtım sayfası olabilir.
Bu nedenle iki ekranın HTTP davranışı farklı olabilir:

DurumUygun yaklaşım
Yayındaki site kısa süreli bakımdaEtkilenen sayfalarda 503 yanıtı
Yeni proje için tanıtım sayfasıİçeriğin amacına göre normal 200 yanıtı
Mağazada yalnızca sipariş alımı durduruluyorİçerikleri açık tutup alışveriş işlevini sınırlandırma

Bir eklentide “Coming Soon” seçeneğinin bulunması, mevcut sitenizin bakım senaryosunda doğru yanıtı vereceği anlamına gelmez.

Yöntem 1: Eklentiyle Bakım Modu Açmak​

Kod düzenlemek istemeyen kullanıcılar için bakım eklentisi pratik bir seçenektir. Tasarım, yönetici erişimi ve açma-kapama işlemi tek bir ayar ekranından yönetilebilir.
WordPress panelinde:
  1. Eklentiler → Yeni Eklenti Ekle bölümünü açın.
  2. “Maintenance mode” ifadesiyle arama yapın.
  3. Güncel WordPress sürümünüzle uyumluluğunu kontrol ettiğiniz eklentiyi kurun.
  4. Eklentinin ayarlarında bakım modunu seçin.
  5. Başlık, açıklama ve varsa iletişim bilgilerini düzenleyin.
  6. Yetkili kullanıcıların erişim ayarını kontrol edin.
  7. Modu etkinleştirip oturum açılmamış bir tarayıcıdan test edin.
Eklenti seçerken yalnızca şablonlara bakmayın. Şu özellikler daha belirleyicidir:
  • Geçici bakım için 503 yanıtı verebilmesi.
  • Yönetici erişimine izin vermesi.
  • Gerekli adresler için istisna tanımlayabilmesi.
  • Mevcut önbellek sisteminizle birlikte çalışabilmesi.
Her eklentinin varsayılan davranışı farklı olabilir. Yönetici olarak siteyi normal görmeniz, ziyaretçilerin bakım sayfasını gördüğünü doğrulamaz.

Bakım sayfasına ne yazılmalı?​

Ziyaretçinin neden erişemediğini ve ne yapabileceğini açıklayan kısa bir metin yeterlidir:
Sitemizde kısa süreli bir bakım çalışması yapıyoruz. İşlem tamamlandığında yeniden erişebilirsiniz. Acil talepleriniz için iletişim adresimizden bize ulaşabilirsiniz.
Bitiş saati kesin değilse iddialı bir geri sayım kullanmayın. Süresi dolduğu hâlde kapanmayan bir sayaç, açıklayıcı bir mesajdan daha fazla kafa karışıklığı yaratır.

Yöntem 2: .maintenance Dosyasıyla Bakım Modu Açmak​

WordPress’in yerleşik bakım mekanizması, kurulum kökündeki .maintenance dosyasını kontrol eder. Buradaki kök, WordPress’in wp-admin ve wp-includes klasörlerinin bulunduğu kurulum dizinidir; her sitede doğrudan public_html olmayabilir.
Hosting panelinin Dosya Yöneticisi veya SFTP bağlantısıyla bu dizinde .maintenance adlı dosya oluşturun.
Dosyanın içine şunu yazın:
Kod:
<?php
$upgrading = time();
Dosya adının başındaki noktayı koruyun. Sonuna .txt eklenmediğinden de emin olun.

10 dakika konusu neden karıştırılıyor?​

WordPress, dosyanın içindeki $upgrading zaman damgasını kontrol eder. Sabit bir zaman damgası 10 dakika veya daha eskiyse bakım durumunu sona ermiş kabul eder.
Ancak yukarıdaki örnekte time() her istekte yeniden çalışır. Zaman damgası sürekli güncel kalacağı için bu dosya bakım modunu 10 dakika sonra kendiliğinden kapatmaz. İşiniz bittiğinde dosyayı kaldırmanız gerekir. Bu sonuç, çekirdeğin dosyayı yükleyip zaman farkını hesaplama biçiminden kaynaklanır.
WordPress’in varsayılan bakım ekranı 503 yanıtı ve Retry-After: 600 başlığı gönderir.

Bu yöntemin sınırları​

Yerleşik bakım mekanizması kullanıcı yetkilerini kontrol ederek yöneticiyi ayrı tutmaz. Bu nedenle .maintenance aktifken yönetim paneline erişemeyebilirsiniz.
Ayrıca statik dosyalar veya önbellekten sunulan sayfalar WordPress’i çalıştırmadan teslim edilebilir. Dolayısıyla dosyayı eklemek, sunucudaki bütün içeriğin erişime kapandığı anlamına gelmez.
PHP veya WordPress’in başlangıç yapılandırması daha erken bir aşamada hata veriyorsa, bakım ekranı da çalışmayabilir. Böyle durumlarda hosting paneli ya da web sunucusu seviyesinde çözüm gerekebilir.

Yöntem 3: Kodla, Yöneticiye Açık Bir Bakım Ekranı Oluşturmak​

Ziyaretçilere bakım mesajı gösterirken yönetici erişimini korumak istiyorsanız küçük bir kod kullanılabilir.
Tema değişiminden etkilenmesini istemiyorsanız, kodu ayrı bir MU eklentisi olarak yerleştirebilirsiniz. WordPress, varsayılan olarak wp-content/mu-plugins içindeki PHP dosyalarını otomatik yükler; panelden ayrıca etkinleştirmek gerekmez.
mu-plugins klasörü yoksa oluşturun. İçine gecici-bakim.php adlı dosya ekleyip şu kodu yerleştirin:
Kod:
<?php
/**
 * Plugin Name: Geçici Bakım Ekranı
 */

defined( 'ABSPATH' ) || exit;

add_action( 'template_redirect', function () {
    if ( current_user_can( 'manage_options' ) || is_robots() ) {
        return;
    }

    nocache_headers();
    header( 'Retry-After: 3600' );

    wp_die(
        'Sitemizde kısa süreli bakım yapıyoruz. Lütfen daha sonra tekrar deneyin.',
        'Bakım Çalışması',
        array( 'response' => 503 )
    );
}, 0 );
Bu örnek:
  • manage_options yetkisine sahip kullanıcıların ön yüze erişmesine izin verir.
  • Diğer kullanıcılar için bakım mesajı gösterir.
  • 503 yanıtı ve bir saatlik Retry-After bilgisi gönderir.
  • WordPress’in robots.txt isteğini kapsam dışında bırakır.
wp_die() içindeki response seçeneği HTTP durum kodunu belirler.
Bakım bittiğinde yalnızca oluşturduğunuz [B]gecici-bakim.php[/B] dosyasını MU eklenti klasöründen kaldırın. Diğer dosyaları silmeyin. MU eklentileri normal eklentiler gibi paneldeki “Etkisizleştir” düğmesiyle kapatılmaz.
Bu kod, normal ön yüz istekleri için hazırlanmıştır. REST API, yönetim AJAX işlemleri, cron görevleri ve ödeme bildirimleri için genel bir kapatma mekanizması değildir. Veri taşırken bütün yazma işlemlerini durdurmanız gerekiyorsa ilgili kanalları ayrıca yönetmelisiniz.
Aynı yaklaşım alt temanın functions.php dosyasına da uygulanabilir. Ancak tema değiştiğinde kod devreden çıkar; yeni bir PHP açılış etiketi eklemek gibi yazım hatalarından da kaçınmak gerekir.

Özel maintenance.php Dosyası Ne İşe Yarar?​

WordPress’in yerleşik bakım ekranını özelleştirmek için wp-content/maintenance.php dosyası kullanılabilir.
Burada önemli ayrım şudur: Bu dosyanın bulunması tek başına bakım modunu açmaz. Yerleşik bakım durumu aktif olduğunda WordPress bu dosyayı yükleyerek varsayılan ekranın yerine kullanır.
Özel dosya, çekirdeğin varsayılan bakım yanıtından önce yüklenir. Bu nedenle 503, Retry-After ve önbellek başlıklarını özel dosyada kendiniz göndermelisiniz.
Bu aşamada WordPress henüz normal çalışma akışını tamamlamadığı için tema ve eklenti fonksiyonlarının hazır olduğunu varsaymayın. Basit bir HTML ekranı daha kolay yönetilir.

Hangi Yöntem Ne Zaman Uygun?​

YöntemYönetici erişimiTasarımKapatma işlemi
Bakım eklentisiEklentinin ayarlarına bağlıGenellikle kolay özelleştirilirAyarlardan kapatılır
.maintenanceNormalde kullanıcı ayrımı yapmazVarsayılan ekran veya özel dosyaDosya kaldırılır
Örnek MU eklentisiYetkili kullanıcıya izin verirKodla düzenlenirİlgili dosya kaldırılır

Yalnızca kısa bir mesaj ve panel erişimi gerekiyorsa eklenti yöntemi yeterli olabilir. Dosya üzerinden hızlı müdahale gerekiyorsa yerleşik mekanizma kullanılabilir. Daha özel davranışlarda kod veya sunucu seviyesinde yapılandırma değerlendirilir.

Bakım Modunda 503 ve Retry-After Neden Önemli?​

503, isteğin geçici olarak karşılanamadığını bildirir. Yayındaki bir sitenin kısa süreli bakımı için uygun sinyaldir.
Retry-After ise yeniden deneme için tahmini süre veya tarih belirtir:
Retry-After: 3600
Bu örnek bir saatlik bekleme bilgisi verir. Ancak tarayıcının veya arama motorunun tam o saniyede yeniden istek göndereceğini garanti etmez.
503 kullanılması da sıralamaların her koşulda korunacağı anlamına gelmez. Uzayan erişilemezlik, tarama ve indekslemeyi etkileyebilir. Google, sitenin tamamen kapatılmasını çok kısa sürelerle sınırlandırmayı; mümkünse içerikleri erişilebilir tutup yalnızca gerekli işlevleri durdurmayı önerir.
Geçici bakım için bütün siteye noindex eklemeyin, tüm taramayı robots.txt üzerinden kapatmayın ve sayfaları kalıcı olarak tek bir bakım adresine yönlendirmeyin. robots.txt dosyasının erişilebilir kalmasını da kontrol edin.

Önbellek Bakım Ekranını Etkileyebilir​

Bakım modu açıldığı hâlde bazı ziyaretçiler eski sayfaları görüyorsa, bu içerikler önbellekten sunuluyor olabilir.
Tersi de mümkündür: Bakım kapatılmıştır ama bakım ekranı önbellekte kaldığı için ziyaretçiye gösterilmeye devam eder.
Bu nedenle hem açarken hem kapatırken:
  1. WordPress sayfa önbelleğini kontrol edin.
  2. Hosting tarafındaki önbelleği değerlendirin.
  3. CDN kullanıyorsanız ilgili önbelleği temizleyin.
  4. Oturum açılmamış bir tarayıcıdan tekrar deneyin.
Önbellek başlıkları göndermek, daha önce saklanmış bütün yanıtları kendiliğinden temizlemez.

Güncelleme Sonrası Bakım Ekranında Takılı Kalan Site​

Güncelleme yarıda kesilmişse bakım dosyası kalmış olabilir. Ancak dosyayı hemen silmeden önce güncellemenin hâlâ çalışmadığından emin olun.
Ardından şu sırayla ilerleyin:
  1. WordPress kurulum dizinindeki .maintenance dosyasını kontrol edin.
  2. Devam eden güncelleme yoksa kalan dosyayı kaldırın.
  3. Siteyi ve yönetim panelini yeniden açın.
  4. Hata kayıtlarını inceleyin.
  5. Güncellenen bileşenin doğru çalıştığını doğrulayın.
Dosyanın kaldırılması, yarım kalan güncellemeyi tamamlamaz. Eksik dosyalar veya başka bir hata varsa ayrıca onarım gerekir.
Ekran devam ediyorsa bakım eklentisini, özel kodu ve önbelleği de kontrol edin.

Bakım Bittikten Sonra Yapılacak Kontroller​

Siteyi yeniden açmak için kullandığınız yöntemi kapatın. Ardından yalnızca ana sayfaya bakmakla yetinmeyin.
  • Birkaç iç sayfayı açın.
  • Giriş ve iletişim formunu deneyin.
  • Mağaza varsa sepet ve ödeme akışını kontrol edin.
  • Ziyaretçilere artık bakım yanıtı verilmediğini doğrulayın.
  • Geçici kodları ve dosyaları kaldırın.
Terminal erişiminiz varsa bir sayfanın yanıt başlıklarını şöyle görebilirsiniz:
curl -s -o /dev/null -D - https://ornek.com/
Bakım sırasında ilgili içerik sayfasında 503, yeniden açılışta ise normal yanıt beklenir. Varsa yönlendirme zincirinin sonundaki yanıtı da inceleyin.

Sıkça Sorulan Sorular​

Bakım modunda yönetim paneline girebilir miyim?​

Yönteme bağlıdır. Eklentiler yetkili kullanıcıya erişim verebilir. Yerleşik .maintenance mekanizması ise normalde yöneticiyi ayrı tutmaz.

.maintenance dosyası 10 dakika sonra etkisizleşir mi?​

Sabit zaman damgası eskiyse etkisizleşebilir. Dosyada $upgrading = time(); kullanılırsa değer her istekte yenilenir ve bakımı dosyayı kaldırarak kapatmanız gerekir.

Bakım modu bütün sipariş ve veri girişlerini durdurur mu?​

Her zaman durdurmaz. Ön yüz kapanırken API, ödeme bildirimi veya arka plan görevleri çalışmaya devam edebilir. Taşıma işlemlerinde bunları ayrıca değerlendirin.

Bakım modunu açmak için eklenti şart mı?​

Hayır. .maintenance dosyası, özel kod veya sunucu tarafındaki bakım ayarları kullanılabilir.

Her güncellemede elle bakım modu açmak gerekir mi?​

Hayır. WordPress gerekli güncellemelerde kendi kısa bakım sürecini kullanır. Elle bakım, kapsamlı değişiklikler veya kontrollü bir erişim kesintisi gerektiğinde değerlendirilir.

Bakım modunu kapattım ama ekran hâlâ görünüyor. Neden?​

Önbellekte kalan yanıt, kaldırılmamış bir dosya veya ikinci bir bakım mekanizması etkili olabilir. Eklenti, dosya ve önbellek katmanlarını birlikte kontrol edin.
 

Benzer Konular

3 konu
Geri
Üst