Keep-Alive Nedir Nasıl Etkinleştirilir?

Son Güncelleme: 12 Mayıs 2021

GTmatrix aracıyla sitenizi test ettiğinizde “Enable Keep-Alive” veya “Keep-Alive’ı Etkinleştirin” gibi bir uyarı mı gördünüz? Aslında, çoğu web sunucularda bu özellik varsayılan olarak etkindir, ancak bazı hosting şirketleri  genellikle kaynak kullanımlarını sınırlamak için Keep-Alive özelliğini devre dışı bırakır. Bu durum WEB sitenizin ekstra hız performansı kazanma şansını azaltır. Peki, Keep-Alive ne demek ve WordPress için Keep-Alive nasıl etkinleştirilir?

Keep-Alive Nedir?

Kalıcı HTTP bağlantısı olarak da bilinen Keep-Alive, her yeni istek (dosya) için yeni bir bağlantı oluşturmak yerine, birkaç sunucudan web dosyasına erişmek için bir TCP (İletim Kontrol Protokolü) bağlantısının etkinleştirilmesine izin veren bir tekniktir.

Peki nasıl çalışır?

Bir web sayfasını (örneğin wpekran.com) ziyaret ettiğinizde, web tarayıcınız web sunucusuyla bir bağlantı oluşturur ve belirli bir dosyaya erişmek için bir istek gönderir. Sunucu, tarayıcınız izin verdiğinde dosyayı indirmeye başlar. Bu döngü ikinci dosya ve diğerleri için de aynı şekilde devam eder.

Dolayısıyla, bir web sayfasının düzgün görüntülenmesi için 10 dosya gerekiyorsa, tarayıcınız tüm bu dosyalar için talepte bulunur ve her dosya indirildikten sonra 10 ayrı bağlantı oluşturup dosyalara erişmek için tek tek sunucuya talepte bulunur.

Ancak, Keep-Alive’ı etkinleştirmek, tarayıcının tüm bu görevleri tek bir bağlantıyla gerçekleştirmesini sağlar. Böylece ağ yükü ve CPU kullanımı büyük ölçüde azalır. Yani istek sayısı azaldıkça sunucu yükü azalır, bu da sitenizin sayfa yükleme hızının önemli ölçüde artacağı anlamına gelir.

Keep-Alive devre dışıyken- İstenen her dosya için sunucuyla iletişim kurar ve böylece gereksiz çoklu bağlantılara yol açar (yükleme süresi gecikmesi ve daha fazlası)

Keep-Alive-1
Keep-Alive Etkinleştirildiğinde – İstenen tüm dosyaları sunucudan tek bir iletişimde alır ve sunar (daha hızlı yükleme süresi, daha iyi performans ve daha da fazlası)

Keep-Alive Etkin
  • Keep-Alive özelliği, web sunucusundaki kaynaklarını tüketen ve yükleme süresini olumsuz etkileyen çoklu bağlantı oluşumunun üstesinden gelir.
  • Bu özellik, tüm barındırma kullanıcılarına fayda sağlar (Ücretsiz, Paylaşılan, VPS)
  • Oluşturulan HTTP istekleri çok küçük olacağından bellek ve CPU kullanımı azalır.
  • Performans nedeniyle SEO için web sitenize fayda sağlar ve böylece SERP’lerde daha iyi bir sıralama görülebilir.

Keep-alive işlevi sayesinde, web site yanıt süresi, beklediğinizden çok daha hızlı olacaktır.

Keep-Alive Nasıl Etkinleştirilir?

Blog ve web siteleri için sayfa yükleme hızı büyük öneme sahiptir. Keep-Alive’ı etkinleştirme site yükleme hızını artırmada önemli bir rol oynar.

Keep-alive’ı etkinleştirme yöntemlerine geçmeden önce sunucunuzda zaten etkin olup olmadığını kontrol etmelisiniz. Çünkü birçok saygın hosting firmasında bu özellik etkindir.

Keep-Alive’ın web barındırıcınız tarafından etkinleştirilip etkinleştirilmediğini test etmek için GTmetrix test aracını kullanabilirsiniz. Test sonucunda aşağıdaki görselde olduğu gibi “Enable Keep-Alive” /”Keep-Alive’ı Etkinleştir” uyarısı görürseniz etkinleştirme işlemine geçebilirsiniz.

Keep-Alive Test

WordPress veya Apache / NGINX sunucularında Keep-Alive’ı etkinleştirmek için aşağıdaki yöntemleri deneyebilirsiniz.

# WordPress’te .htaccess dosyası kullanarak Keep-Alive nasıl etkinleştirilir?

Aşağıdaki kodu .htaccess dosyanızın sonuna ekleyerek Keep-Alive özelliğini etkinleştirebilirsiniz:

<ifModule mod_headers.c>
Header set Connection keep-alive
</ifModule>

Bu yöntem, sunucunuzun yapılandırma dosyasında yapılan tüm ayarları geçersiz kılar. Dolayısıyla, etkinleştirmek için sunucu tarafında erişime gerek kalmaz. .htaccess dosyasını düzenledikten sonra web sitenizi mutlaka kontrol edin. Herhangi bir sorunla karşılaşırsanız eklediğiniz kod satırlarını kaldırın.

# Apache’de Keep-Alive’ı etkinleştirme

Yeni Apache sunucularının çoğunda Keep-Alive varsayılan olarak etkindir. Eğer etkin değilse, sunucunuzun Apache HTTP Sunucu yapılandırma dosyasını (httpd.conf) bulun.  Buna SSH (/usr/local/apache/conf/httpd.conf) aracılığıyla erişebilirsiniz. Bulamazsanız, find / -name httpd.conf  komutunu çalıştırın.

Web siteniz paylaşımlı bir ana bilgisayarda çalışıyor ise, httpd.conf dosyasına erişim izniniz olmayabilir. Erişiminiz varsa, yapılandırma dosyasındaki ilgili bölümleri aşağıdaki gibi düzenleyin:

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 50
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 10
  • KeepAlive: Canlı tutma özelliğini etkinleştirmek için “KeepAlive On” olarak ayarlayın. Devre dışı bırakmak için “KeepAlive Off” seçeneğini kullanın.
  • MaxKeepAliveRequests: Her bağlantı için maksimum istek sayısını ayarlar. Başlamak için bağlantı başına 60 istek idealdir.
  • KeepAliveTimeout: Sunucunuzun istemcilerden gelen yeni istekleri ne kadar beklemesi gerektiğini ayarlar.

# WHM’de Keep-Alive özelliğini etkinleştirme

Apache sunucuları için alternatif bir diğer yöntem de WHM’de Keep-Alive’ı etkinleştirmektir. Yapılandırmanın nasıl ayarlanacağına dair adım adım süreci açıklayan aşağıdaki ekran görüntülerine bakın.

Tek yapmanız gereken Apache yapılandırmasına erişmek. Bunu Servis konfigürasyonu menüsü bölümünde bulabilirsiniz. Daha sonra Global konfigürasyon’a tıklayarak, orada birçok seçeneği görebilirsiniz.

WHM Keep-Alive Etkinleştirme

Daha sonra, aşağıdaki ekran görüntüsünde belirtildiği gibi, Keep-Alive düğmesini “On” konumuna getirin.

WHM Keep-Alive Etkinleştirme-2

# NGINX için Keep-Alive’ı etkinleştirme

Bir Nginx kullanıcısıysanız, Keep-Alive’ın varsayılan olarak zaten etkin olduğunu görebilirsiniz. Ancak çok nadiren bazı durumlarda bu ayar devre dışı bırakılabilir.

Eğer herhangi bir nedenle bu özellik kapatılmışsa, sunucunuzdaki HttpCoreModule‘de yer alan keepalive_disable değerini değiştirerek Keep-Alive’ı etkinleştirebilirsiniz. Ancak, işlem yapmadan önce bu özelliğin neden kapatıldığını öğrenmenizde fayda var.


Bazı sunucularda Smart Keep-Alive yani Akıllı Canlı Tutma ayarı kullanılır. Bu ayar normalde yüksek hacimli web siteleri için kullanılır. Bu ayarı varsayılan olarak bıraktığınızda analiz araçlarında Keep-Alive işlevi devre dışı olarak görünür. Bunu kontrol etmenizde fayda var.


Son olarak, tüm bunları yapmak size karmaşık geldiyse, hosting firmanızla görüşüp bu özelliği etkinleştirmelerini isteyebilirsiniz. Çoğu firma bunu hemen sizin için halledecektir.

Ancak; bazı hosting firmaları Keep-Alive etkinleştirme dahil birçok konuda yeterince yetki sunmaz veya bu tür özellikleri desteklemez. Eğer web site hızınız düşükse ve bu konuda hosting firmanız yeterince destek sunmuyorsa, ya hız arttırmak için farklı yolları deneyin ya da daha çözüm odaklı bir firmaya geçmeyi düşünün. Zira web site performansını etkileyen en önemli faktör site barındırıcısı yani hosting hizmetidir!

Umarız bu kılavuz, “Keep-Alive nasıl etkinleştirilir” sorusuna yanıt bulmanıza yardımcı olmuştur. Peki Keep-Alive etkinleştirme yöntemlerinden hangisini kullanıyorsunuz? İşlem sonucunda sayfa yükleme hızınızda herhangi bir gelişme oldu mu? Aşağıdaki yorum bölümünden bizimle paylaşmayı unutmayın!

Diğer WordPress kılavuzlarına ve blog ipuçlarına da göz atmak isteyebilirsiniz!