Dosya nöbetçisini yapılandırma
İlk kayıt: durumu oluşturmak
İlk başlatmada karşılaştırılacak bir şey yoktur — tarama turu bunun yerine durumu oluşturur: her dosya için bir sağlama toplamı (PHP'de varsa sha256, yoksa md5), ayrıca boyut, değişiklik zamanı ve alan. Bu, küçük parçalar hâlinde ilerler; varsayılan olarak adım başına en fazla 400 dosya veya 5 saniye. Pencereyi kapatıp daha sonra devam edebilirsiniz. İlk kayıtta bir yüzde değeri gösterilmez, çünkü toplam sayıyı henüz kimse bilmez — okunan dosyalar ve açık dizinler gösterilir. Baştan önemli: bekçi, karşısında ne bulursa onu belleğine alır ve doğru kabul eder. Kurulumdan emin değilseniz, önce dosya bütünlüğünü (çekirdeği WordPress.org'a karşı) ve kötü amaçlı yazılım taramasını çalıştırın. Bir taşımadan veya geri yüklemeden sonra temiz yol “Durumu sıfırla”dır: tüm sağlama toplamları ve bulgular silinir, sonraki tur yeniden kaydeder. Bu geri alınamaz.
Neyin kontrol edildiği — ve neyin edilmediği
Kontrol, WordPress dizininden başlayan ağaç üzerinde yapılır. wp-content veya eklenti dizini hosting sağlayıcınızda bunun dışındaysa, ayrı bir kök olarak eklenir ve görünümde kendi ön ekini alır. Kurulumun bir düzey üzerinde duran bir wp-config.php, adı belirtilmiş tekil dosya olarak alınır ve her turun başında ilk sırada kontrol edilir — üst dizinin kendisi bilinçli olarak taranmaz; çoğu hosting sağlayıcısında orada yabancı kurulumlar ve yedekler bulunur. Varsayılan olarak uploads dizini ile 15 yerleşik cache, temp ve günlük kalıbı (diğerlerinin yanı sıra wp-content/cache, wp-content/upgrade, node_modules, .git, *.log) dışarıda bırakılır; her iki anahtarı da kapatabilirsiniz, o zaman tur daha uzun sürer ve her görsel yüklemesi bir bulgu üretir. Kendi kalıplarınızı dışlama listesine eklersiniz: en fazla 100 kayıt, her biri en fazla 200 karakter. Eğik çizgisiz bir kalıp, bu addaki her yol bölümüne uyar; eğik çizgili bir kalıp kökte sabitlenmiştir; * bir bölümün içinde geçerlidir. Tüm örnek yollara uyan bir kalıp reddedilir — böyle bir kalıp, listeye bakınca fark edilmeden izlemeyi kapatırdı. Kayıt sırasında, güncel durumdaki kaç dosyanın bu kalıba girdiği sayılır ve gösterilir. Boyut sınırının üzerindeki dosyalar (varsayılan 16 MB, 1 ile 512 arasında ayarlanabilir), okunamayan dosyalar ve sembolik bir bağlantının arkasındaki her şey okunmaz — bu durumlar sonuçta ayrı sayılar olarak yer alır ve açıkça “eksik” sayılmaz.
Bulguları okumak ve uygulamak
Üç tür vardır: değişmiş, yeni, eksik. Her dosya için listede en fazla bir açık bulgu yer alır; ilk tespit, son tespit ve sayaç ile birlikte. Karşılaştırma son turla değil, en son onaylanan durumla yapılır — bu yüzden bir bulgu, siz onu uygulayana kadar listede kalır. İçerik kendiliğinden yeniden duruma uyarsa (güncelleme geri alınmış, dosya geri yüklenmiş), bulgu kaybolur; bildirilmiş olup sonra ortadan kalkan yeni bir dosya, sessizce silinmek yerine yolu ile birlikte etkinlik kaydına yazılır. “Durumu uygula”, önce ne olacağını gösterir ve ardından 500'lük bloklar hâlinde çalışır: değişmiş dosyalar yeni sağlama toplamını alır, yeniler eklenir, eksikler düşer. Dosyaların kendisinde hiçbir şey değişmez — ama eski sağlama toplamı bundan sonra kaybolur; bu yüzden düğmeye basmadan önce açıklayamadığınız her şeye bakın. Arşiv için, en fazla 2000 açık bulguyu eski ve yeni sağlama toplamıyla birlikte içeren bir CSV dışa aktarma vardır. İki sınırı bilmelisiniz: 3000 açık bulgunun üzerinde sayma sürer ama artık kayıt yapılmaz (arayüz bunu söyler) ve geçmişten en son uygulanan 500 bulgu saklanır. Yarıda kesilen bir tur eksik dosyaları belirlemez — bunun için tam bir çalışma gerekir.
Hassas dosyalarda anında bildirim
Varsayılan olarak açıktır. “Hassas” burada “önemli” anlamına gelmez; şu anlama gelir: bu dosyayı değiştirebilen kişi kendi kodunu çalıştırır ya da erişim verilerine ulaşır. Bunlar wp-config.php, sunucu yapılandırmaları (.htaccess, .htpasswd, .user.ini, php.ini, web.config), drop-in dosyaları (db.php, object-cache.php, advanced-cache.php, sunrise.php ve benzerleri), mu-eklentileri ve ayrıca hiç bulunmaması gereken yerlerdeki PHP dosyalarıdır: uploads dizininde, WordPress kökünde ve wp-content içinde plugins ile themes dışında. Bu bildirimler her küçük parçanın sonunda gider, turun sonunu beklemez — büyük bir kurulumda aradan saatler geçer. En küçük aralık varsayılan olarak 15 dakikadır (0 ile 1440 arasında ayarlanabilir); bu süre içinde eklenenler toplanır ve bir sonraki bildirimle gider, hiçbir şey kaybolmaz. Bir bildirimde en fazla 200 kayıt listelenir, geri kalanı sayı olarak belirtilir. Turun sonunda ve yarıda kesilmede kalan, aralığa bakılmaksızın boşaltılır. Yolu bir kez deneme bildirimiyle kontrol edin: bu bildirim size wp_mail() iletiyi kabul mü yoksa ret mi ettiğini açıkça söyler — iletinin teslim edilip edilmeyeceğine ise arkadaki sunucu karar verir. Kendi kalıplarınızı ek olarak hassas diye tanımlayabilirsiniz; bu sırada açık bulgular anında yeniden sınıflandırılır, böylece liste iki ayrı gerçeği göstermez.
Otomatik çalışma ve zaman çizelgesi
Varsayılan olarak tarama turu yalnızca siz başlattığınızda çalışır. Otomatik çalışmayı açtığınızda saatlik, günde iki kez, günlük (ön tanımlı) ve haftalık arasında seçim yaparsınız. İlk zaman bilinçli olarak 5 dakika ileriye konur, böylece siz yönetim panelinde çalışırken araya bir tur girmez. Hesaplama, son turun başlangıcından itibaren 5 dakika tolerans ile yapılır — aksi hâlde uzun süren bir tur her seferinde daha seyrek çalışırdı. Cron aynı küçük parçaları işler ve bir şey açık kaldığı sürece kendini her 30 saniyede yeniden planlar; siz o sırada tarayıcıda sürüyorsanız 120 saniye bekler ve direksiyona uzanmaz. Aynı işte iki sürücü olmasını, her yanıtla birlikte devredilen bir token engeller; kilit 60 saniye sonra düşer, böylece kapatılmış bir tarayıcı işi kalıcı olarak bloke etmez. Kurulumunuzda DISABLE_WP_CRON tanımlıysa, açma sırasındaki mesaj size turun yalnızca wp-cron.php dışarıdan çağrıldığında — yani bir sunucu cronjob'ı kurulduğunda — başlayacağını söyler.