11 Şub, 2018

" WordPress optimizasyon "

Merhabalar efenim, Günümüzde wordpress kullanıcılarının geneli demeyelim de büyük çoğunluğu WordPress Güvenlik ve optimizasyon konusunda forumlarda yardım konuları açıyor, bu konulara istinaden bir yazı yazarak wordpress için güvenlik ayarları ve optimizasyon nasıl yapılır konusunda bir makale hazırlamaya çalışalım.

MAKALE İÇİ KISAYOLLAR

Güvenlik eklentileri Htacces dosyası   |   Çift giriş paneli  |  Spam mevzu  | Tablo Ön eki  | Wp-Config  | Çekirdek güncellemesi

Op-htacces  |  Op-Revizyon  |  Off-Html  |  Op-Css-Js-İmage   | Veritabanı bakım | CDN Hizmeti | Basit sorgular | Rss besleme  | Url tahmini | Emoji OffMemory limit | Css-Js-to-Footer | Wp-Cache | Cron-sistemi | WordPress-Cpu 


WordPress optimizasyonÖnce WordPress güvenlik ayarları konusuna değinelim.

WordPress başlı başına oldukça sağlam bir çekirdeğe sahip olması nedeniyle ek bir güvenlik eklentisine ihtiyaç zaten yok ancak WordPress güvenliği alanında Güvenli Hosting ile başlamak aslında yolun yarısını geçmektir, güvenli hosting alanında Kodespa Hosting size yardımcı olabilir.

Hosting kısmını geçtiğimizi varsayarsak şimdi WordPress eklentilerden ve kullanılmayan temalardan kurtulmanız size büyük güvenlik artısı katacaktır zira zeroday açıklarına bakarsanız WordPress’ten ziyade wordpress için hazırlanmış eklenti ve temaları görürsünüz, WordPress başlı başına sağlam bir yapıya sahiptir.

WordPress’in kullanılmayan eklenti ve temalarını kaldırmanız bir adım daha ileri getirecektir sizi, Eklenti kullanımını ne kadar düşürürseniz o kadar sağlam bir sisteme sahip olursunuz.

WordPress güvenliği vaadeden eklentilerin kendisinde dahi güvenlik açığı olduğunu geçtiğimiz yıllarda yazmıştım 🙂 bu eklentilerin yaptığı şey sizi .htaccess ile belirli güvenlik açığı taramalarından korumak ve basit fonksiyonlarla basit işlemleri engellemektir ki bu eklentiler olmadan da sunucunuz bu tarz basit saldırıları kaldıracak düzeydedir.

Htaccess ile Güvenlik Ek olarak Htaccess dosyası ile güvenliği sağlamak için Optimize Edilmiş Htacces yazıma bakabilirsiniz orada paylaştığım htaccess dosyasında birtakım saldırıları açık taramalarını ve optimizasyon için gerekli olan gzip sıkıştırmalarını eklemiştim.

Twoo Login Biraz paranoyak iseniz wordpress admin paneline 2. giriş paneli ekleyerek iki doğrulamalı wordpress login sistem yapabilirsiniz yine bunun için yazdığım diğer yazı WordPress iki aşamalı giriş okuyup uygulamanız yeterlidir.

Spam yorumlar için yine olağanüstü bir eklentilere gerek yok akismet olsun bilmem ne captcha olsun gerek yok Quiz eklentisini kullanarak bir soru belirleyip cevap isteyerek bu kısmı da geçebilirsiniz (kod bilgisi olalar yorum kısmına eklentisiz soru eklemesini öneririm yine eklenti kullanmayın)

Taplo Ön eki WordPress kurulumunda varsayılan olarak kurulum işlemi sırasında mysql tablo prefix wp_ şeklinde başlar bunu değiştirmenizi öneririm (önce wp-config.php içinden tablo ön eki kısmını değiştirin ardından phpmyadmine girip tablo ön eki değiştir kısmından değiştirebilirsiniz Resim-1 Resim-2) WordPress global saldırılarda tablo öneki wp_ baz alınarak saldırı aracı hazırlanır.

Wp-config.php Güvenliği; Config dosyasının chmod değerini 444 veya 400 yapın bunu da ftp girip yapabilirsiniz (Chmod nedir)

Wp-config ve admin yolunu değiştirmenizi de öneririm ama bu sunucuya erişen insanın admin yolunuza ihtiyacı kalmaz 🙂  (Config-yolu değiştirme)

WordPress giriş bilgileri kesinlikle kullanıcı adı “admin” olmamalı ve şifre kesinlikle türkçe kelime olmasın.

WordPress çekirdek güncellemesini otomatik yaptırmak için wp-config.php içine ekleyin.

define( 'WP_AUTO_UPDATE_CORE', true );

WordPress Optimizasyon ayarları konusuna değinelim.

WordPress zaten hazır kullanılabilirlik anlamında en basitleştirilmiş haliyle geliyor bize ama bir süre sonra wordpress şişerek yavaşlamalara neden oluyor bu da site içi yavaşlama ile başlayıp müşteri kaybına kadar gidebilecek büyük kayıplara neden olabilir.

Resim / Css / Js Optimizasyonu yani sıkıştırma ve küçültme işlemini yapmanızı en başından söyleme gerekiyor bunun için sıkıştırma ortamları mevcut;

Resim dosyalarının içlerinde hangi fotoğraf makinesiyle ne zaman çekildikleri gibi bilgileri (EXIF verileri) içlerinde tutabileceğini hatta küçük bir önizleme bile bulundurabileceklerini biliyor muydunuz? Resimleri sitemize yüklemeden önce küçültmek bu nedenle yetmiyor, neyse ki resimlerin kalitesini bozmadan bu gereksiz verileri kaldırıp optimize eden WP Smush.it eklentisi var. Eklentiyi kurup Admin Panelinizin Altından Ortam -> Bulk Smush.it bölümüne girin ve Run all my images through Smush.it right now butonuna tıklayın. Sitenizdeki yazılara önceden eklediğiniz resimlerin hepsi tek tek optimize edilerek küçültülecek. Biraz zaman alıyor ancak buna değer.

Css ve Js sıkıştırmaları için kullanabileceğiniz adres ise Minify.org

Veritabanı bakım ve onarımı için; phpmyadmin’e giriş yaptıktan sonra tüm tabloları seçip onar diyerek bozulan tablo yapılarınızı onarabilirsiniz.

WordPress veritabanını kendisi onarma sistemini aktif etmek için ise config içine ekleyin;

define(‘WP_ALLOW_REPAIR’, true);

CDN HizmetiÇok yüksek trafik alan sitelerin en büyük kurtarıcısıdır. CDN statik içeriklerin başka bir lokalasyonda barınmasıdır . CDN bu statik içeriklerinizi (js, css dosyaları gibi) en hızlı bir şekilde açılabilmesi için üretilmiş teknolojidir. WP fastest cache eklentisiyle direk entegre edilebilmekte. Maxcdn resmi sitesinde nasıl bağlandığı güzelce anlatılıyor.

Basit sorguları kaldırın; Temanızın header.php dosyasında yer alan bazı kodları düzenleyerek sorguları düşürebilirsiniz.

Misal < meta charset=” <? php bloginfo( ‘charset’ ); ?> “> şeklinde dil karakter kodlamasını mysql den çekmek yerine < meta http-equiv=”content-typecontent=”text/html; charset=utf-8” /> şeklinde manuel olarak girebilirsiniz. Aynı şekilde logo , resim v.b dosyaları mysql den çekmek yerine < img src=”http://siteadresiniz.com/images/logo.jpg” alt=”logo” > şeklinde direk kod olarak ekleyebilirsiniz.

Htacces ile optimizasyon Öncelikle WordPress sisteminiz için gerekli olan sıkıştırma ve cache için ayarlanmış olan  Htacces dosyasını yukarda vermiştik yeniden işinizin görülmesi açısından Htacces Dosyasına ulaşabilirsiniz

Yorum kısmındaki Html editörünü devredışı bırakmanız için config içine aşağıdaki kodu ekleyin;

add_filter( 'pre_comment_content', 'esc_html' );

WordPress yazı yedekleme (revizyon) devre dışı bırakır yada 3 defa yedekleme yapması için config içine ekleyn;

define( 'WP_POST_REVISIONS', false);
### bu devre dışı bırakır
define( 'WP_POST_REVISIONS', 3);
### buda 3 defa yedekler

WordPress şişmesinin en temel nedenlerinden biridir bu revizyonlar, şöyle düşünün her yazıyı 10 defa taslağa alıp yazmaya devam etseniz 5.000 yazı olduğunu düşünün ve veritabanında ki şişmeyi siz düşünün.
Rss besleme aktif değilse kapatın, bunun için temanızın fonksiyon dosyasına ekleyin;

function disable_our_feeds() {
 wp_die( __('RSS KAPALI !!') );
 }
 add_action('do_feed', 'disable_our_feeds', 1);
 add_action('do_feed_rdf', 'disable_our_feeds', 1);
 add_action('do_feed_rss', 'disable_our_feeds', 1);
 add_action('do_feed_rss2', 'disable_our_feeds', 1);
 add_action('do_feed_atom', 'disable_our_feeds', 1);

Url tahminini devre dışı bırakmanızı öneririm bunun için temanın fonksiyon dosyasına ekleyin;

add_filter('redirect_canonical', 'stop_guessing');
function stop_guessing($url) {
 if (is_404()) {
   return false;
 }
 return $url;
}

WordPress Emojileri kapatmanızı öneririm bunun için ise temanın fonksiyon dosyasına ekleyin;

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );

WordPress’ın memory kullanım limitini artırmak için wp-config.php içine ekleyin.

define('WP_MEMORY_LIMIT', '64M');

WordPress js ve css dosyalarını header’dan kaldırmak için aşağıdaki kodu temanızın fonctions.php içine ekleyin.

remove_action('wp_head', 'wp_print_scripts');
remove_action('wp_head', 'wp_print_head_scripts', 9);
remove_action('wp_head', 'wp_enqueue_scripts', 1);
add_action('wp_footer', 'wp_print_scripts', 5);
add_action('wp_footer', 'wp_enqueue_scripts', 5);
add_action('wp_footer', 'wp_print_head_scripts', 5);

Cache sisteminin aktif etmek için veya devredışı bırakmak için wp-config.php içinden düzenleyin.

define( 'WP_CACHE', true );

Cron sistemi Ben zamanlama yapmam site içinde neyse odur diyorsanız (ki baya iyi olur) cron / zamanlayıcıyı kapatmanızı öneririm bunun için ise config içine ekleyin;

define( 'DISABLE_WP_CRON', true );

WordPress Cpu sorunu genellikle herkesin başına gelmiştir 🙂 bu büyük sıkıntıdan kurtulmanın en büyük ve en kolay yolu ise cache / Önbellek eklentileridir (ne kadar eklenti kullanmayı sevmesem de bunu kullanıyorum)

Cache eklentileri içinde en basit ve en temiz kullanıma sahip olanı ise Wp fastest cache kullanımı kolay ve işini layıkıyla yapıyor ve Türkçe 🙂

Not: Cache eklentisinin kurulumunun ardından yukarda verdiğim htacces kodlarını yeniden girmeniz gerekecek çünki her cache eklentisi htaccess içindeki kodları silip kendi kodlarını yerleştirir ki ben htaccess dosyasını hazırlarken wp fastest cache eklentisinin kodlarını htaccess içine ekleyerek paylaştım.

WordPress Güvenlik ve optimizasyon işlemlerimiz bu kadar, aklıma geldikçe listeyi güncelleyeceğim.

Saygılarımla, Selametle…

Bu yazı 3978 Defa okundu, Beğendiyseniz alttaki benzer yazıları okumanızı öneririm, isterseniz site içinde farklı içerikleri arama yapabilirsiniz.

#WordPress Yorumlarda Url kaldırma , #Optimize edilmiş .Htaccess , #En iyi forum Scripti , #İnstagram Mobil harici Fotoğraf yükleme (Bug) , #cPanel/Whm – Server optimizasyon , #LXC vs Docker , #Hosting Kontrol Panelleri , #Pyxsoft Anti Malware [Kurulumu] , #Seo uyumlu temalar , #Yüksek Zityaretçi Trafiği İle Baş Etme ,

Ali Çömez / Slaweally

Kaldırımda yürürken beyaz çizgilere basmamaya çalışan, Sabah yüzünü yıkarken dirseklerinden su sızmasından nefret eden, Dönerle ayranı aynı anda bitirebilen, son dakikada otobüsü kaçırsada grur yapıp arkasından koşmayan... bir insanım :)

  1. hasan atilan dedi ki:

    eline sağlık ali abi süper anlatım 🙂

  2. Hüseyin dedi ki:

    Eline sağlık güzel yazı yazmışsın emek verdiğin belli, yazı içinde en çok dikkatimi çeken alan bu wordpress header'daki js ve css dosyalarını kaldırmak demişsiniz headerdan kaldırıyor nereye alıyor? footer mi farklı dizine mi taşıyor ordan mı çekiyor anlamadım.

  3. Oyun Oyna dedi ki:

    Bunlara uğraşacağınıza it security yada diğer firewall eklentilerini kullanmanız daha mantıklı sonuçta sizin yerinize aynı işi onlar yapıyor 🙂

    • Ali Çömez dedi ki:

      Aynı işi yapmıyor biz burada sadece Güvenliği değil aynı zamanda Optimizasyonu da anlatık dostum. Ek olarak asıl mantık eklenti fazlalığından kurtulmak 🙂

  4. Osman dedi ki:

    Ellerinize sağlık hocam.

  5. Samet sağlam dedi ki:

    Muhteşem çok işime yaradı

  6. murat cay dedi ki:

    güzel yazı olmuş eline sağlık

  7. Murat Orçun dedi ki:

    CPU aşımı konusunda oldukça fazla sıkıntı yaşanıyor buna engüzel çözüm sunan makale ve konu anlatımı olmuş.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Spam olmadığınızı doğrulamak için aşağıdaki alana slaweally yazın