Dünyanın en çok kullanılan CMS lerinden biri olan Wordpress üzerinde web sitenizin daha hızlı yüklenmesini sağlamak (ki Google buna çok önem veriyor) için akla gelen ilk çözümlerden bir tanesi de sayfanızın boyutunu (yani kapladığı alanı) küçültmek olmalıdır. Web sitenizin boyutunu azaltmak ve web sayfanızın ilk oluşturulma süresini iyileştirmenin de ilk akla gelen yolu GZIP etkinleştirme işlemidir. Wordpress GZIP etkinleştirme işleminin Wordpress sitenizde nasıl yapacacağınızı sizlere anlatacağım.
Aslında bu yöntemi daha önce WordPress GZIP sıkıştırma adlı yazımda da anlatmıştım ancak yeterli ilgiyi görmedi sanırım. Bu yüzden yeniden düzenleyip bazı eklemeler yaparak yeniden yazdım.
HKNKR
Bu yazımda sizlere Wordpress içerik yönetim sistemi kurulu internet sitenizde, sitenizin daha hızlı açılması ve Google tarafından daha iyi indexlenmesi; ayrıca Google aramalarında daha üst sırada yer almak istiyorsanız da Wordpress GZIP sıkıştırma özelliğinin bir başka deyişle mod_deflate kullanımının aktif olması gerekiyor. Bunun için bazen .htaccess dosyası üzerinde bazen de cpanel üzerinde düzenleme yapmanız gerekebilir. Fakat tüm düzenlemelere rağmen mod_deflate modülü aktif gözükmüyorsa; yani gzip aktifleşmemişse (gzip çalışmıyorsa) aşağıda yazacaklarımı uygulayabilirsiniz.
Sayfa İçerikleri
WordPress GZIP Etkinleştirme Nasıl Yapılır?
Wordpress içerik yönetim sistemine sahip internet sitenizde, sitenizin hızlı bir şekilde açılmasını sağlamak için gzip özelliğini kullanıyoruz. GZIP özelliği ile sayfalarınızın boyutları azaltılıyor ve neredeyse 1 saniyenin altında siteniz açılıyor. Bu Google için özellikle çok önemli.
Günümüzde tüm tarayıcılar Wordpress GZIP özelliğini destekliyor. Muhtemelen sizin web sitenizin bulunduğu web sunucunuzda da GZIP özelliği yer alıyordu. Bir web tarayıcısı bir web sitesini ziyaret ettiğinde, “content-encoding: gzip” yanıt başlığının var olup olmadığını görmek suretiyle web sunucusunda GZIP’in etkin olup olmadığını kontrol eder. Header içinde algılanırsa, sıkıştırılmış ve daha küçük dosyaları hedef alır.
GZIP etkin değilse Google PageSpeed Insights ve GTmetrix gibi sitenizin hızını test eden araçlarda uyarılar göreceksiniz; ayrıca Google’in son güncellemesi ile Google arama sonuçlarında sitenizin hızı düşük puanlı olacağından alt sıralarda yer alacaksınız.
Sitenizde GZIP etkin olup olmadığını kontrol etmek için şu siteden faydalanabilirsiniz;
Bu yazımda bahsettiğim GZIP özelliği konusundaki eklemeler sonrası bu siteden GZIP’in etkinleşip etkinleşmediğini kontrol edebilirsiniz.
Bunun yanında eğer sunucunuzda SSH bağlantınız varsa gzip’in aktif olup olmadığını curl komutu yardımıyla da kontrol edebilirsiniz. Aşağıdaki komutu SSH üzerinde yazın:
curl -I -H 'Accept-Encoding: gzip,deflate' https://www.hknkr.com
Site adı kısmına kendi adresini yazabilirsiniz. Eğer ekranda Content-Encoding: gzip sonucuyla karşılaşırsanız gzip aktif durumda ve çalışıyor demektir.
Wordpress sitenizde GZIP’i etkinleştirmenin çeşitli yolları var. Bunlardan ilki, sitenizde GZIP özelliğini destekleyen bir önbellek eklentisi (cache) kurmak olacaktır. Şuan piyasada bulunan çoğu önbellek eklentisi (WP Super Cache, WP Total Cache, WP Rocket) söz konusu özelliği destekliyor ve mod_deflate modülünü kullanarak otomatik bir şekilde GZIP’ın çalışmasını sağlıyor.
Bu bahsettiğim eklentiler (plugins) GZIP özelliğini destekliyorlar ancak yine de web sunucunuzda bazı dosyaları değiştirmek için izinlere ihtiyaç duyuyorlar; eğer sitenizde Wordpress güvenlik önlemleri kapsamında bazı dosyaların cmod izin ayarlarını değiştirmişseniz (örneğin .htaccess veya cache klasörü veya wp_config) söz konusu eklentileri kurduğunuzda bazı kod ayarlamaları yapmanız gerekecek. (veya zaten eklenti kurulumunda hangi izinlerin verilmediğini eklentiler size gösteriyor)
Bunun yanında sadece GZIP özelliğini aktif etmek için kullanılan WP eklentileri de bulunuyor. Bunlardan bir tanesi de GZIP compression adlı eklenti. Kurulumu basit; eklenti ekle kısmından buluyorsunuz, yükle ve etkinleştir dedikten sonra GZIP’i etkinleştir diyorsunuz, gerisini kendi hallediyor. (Yalnız burada yine sunucunuz dosya izinleri farklıysa, sorun meydana gelebilir.)
Eklenti Yardımıyla GZIP etkinleştirme
Wordpress üzerinde son zamanlarda Wordpress Cache eklentileri yardımıyla veya optimizasyon gibi eklentilerin bir çoğunda GZIP aktifleştirme / etkinleştirme işlemlerini tek tuş yardımıyla yapabiliyorsunuz. Bu eklentileri hali hazırda kullanıyorsanız, kullandığınız bu eklenti yardımıyla GZIP etkinleştirin, bir daha buradaki kod mod işlerine karışmayın derim.
Yukarıda bahsettiğim iki sebepten ötürü eklenti kurulumu sonrası gerekli izinler yoksa, web sunucunuzda aşağıdaki kodları kullanmanız gerekebilir. Cpanel üzerinden dosya yöneticisine girdiğinizde, sitenizin kurulu olduğu yerde bulunan .htaccess dosyasını açın. Aşağıdaki kodu içerisine yapıştırın.
# Compress HTML, CSS, JavaScript, Text, XML and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
NGINX’te GZIP’i Etkinleştirme
Yukarıda anlattıklarımın hepsi Apache yüklü sunucularda yapılacak işlemlerdi. Eğer sunucunuz NGINX üzerinde çalışıyorsa, aşağıdaki kodları sunucunuzda bulunan nginx.conf dosyanıza ekleyin ve kaydedin.
gzip on;
gzip_disable "MSIE [1-6].(?!.*SV1)";
gzip_vary on;
gzip_types text/plain text/css text/javascript image/svg+xml image/x-icon application/javascript application/x-javascript;
IIS’de GZIP’i Etkinleştirme
IIS üzerinde bir siteniz varsa eğer GZIP etkinleştirme işlemi için iki farklı sıkıştırma yönteminden birini denemeniz gerekiyor. Statik ve dinamik olmak üzere kullanılan iki farklı sıkıştırma türü hakkında geniş bilgi için (ingilizceniz varsa) aşağıdaki rehberi okuyabilirsiniz.
(Windows sunucu kullanmadığım için bu yöntem hakkında daha fazla bilgi veremiyorum)
GZIP Cpanel üzerinden etkinleştirme
Cpanel’e giriş yapıp “Yazılım” kısmında yer alan “Web sitenizi Optimize edin” kısmında tüm içeriği sıkıştır seçeneğini seçerek GZIP aktif edebilirsiniz.
cPanel’de Gzip Çalışmama Sorunu
Yukarıda yazanların hepsini yaptınız ve hala gzip çalışmıyor ise – ki bu yazıyı okuma sebebiniz de sanırım bu – şimdi yazacaklarımı uygulayabilirsiniz.
Cpanel üzerinde Yazılım sekmesinde bulunan MultiPHP INI Editor kısmını açın ve Editör Mode (Düzenleyici Modu) seçeneğini tıklayın. Bu kısımda sitenizin çalışan PHP versiyonunu seçin. Sonrasında aşağıdaki satırları bularak altta yazdığım şekilde düzeltin.
output_handler = Off
zlib.output_compression = On
zlib.output_handler = ob_gzhandler
Wordpress GZIP çalışmıyor ise ne yapmalıyım?
veya bu işlemleri yapmadan yani kod girmek istemiyorum diyorsanız en baştan başlayalım;
Cpanel üzerinden yazılım sekmesinde bulunan MultıPHP INI Düzenleyicisi kısmına giriş yapın.
Açılan kısımda Temel Mod kısmını seçin, “bir konum seçin” kısmında ise sitenizi seçin. Aşağıdaki gibi bir yer açılacak:
Bu kısımda zlib.output_compression kısmının sağdaki gibi etkinleştirildi olması lazım. GZIP etkinleştirme işleminin olması için “etkinleştirildi” olması gerekiyor yani.. Bu kısmı “etkinleştirildi” şeklinde yapın, aynı resimde olduğu gibi.
Sonra bu son işlemi, sondan bir önceki kısımda yer alan “Bir konum seçin” kısmında ana klasörü seçerek de tekrar yapın.
Şimdi sitenizde GZIP etkin olması gerekiyor. Böylelikle Wordpress GZIP sorunu çözülmüş oluyor. Yani GZIP aktif olmuyor, GZIP çalışmıyor gibi soruları sormazsınız artık. : )
WordPress’te GZIP Etkinleştirme hakkında bu yazımı beğendiyseniz, lütfen aşağıdaki düğmeleri kullanarak sosyal medya sitelerinde arkadaşlarınızla paylaşın veya yorum kısmına bir cevap bırakın.
Umarım fayda sağlamıştır.