1. Gzip Sıkıştırmayı Aktif Hale Getirin
Gzip sıkıştırması, sitenizin veri boyutunu küçültür, yani daha hızlı yüklenmesini sağlar. Nginx, Gzip’i kolayca etkinleştirmenize olanak tanır. Gzip ile, CSS, HTML ve JavaScript dosyalarını sıkıştırarak sunucudan tarayıcıya iletilen veri miktarını azaltabilirsiniz. Bunun için aşağıdaki kodu Nginx yapılandırma dosyanıza eklemeniz yeterli:
gzip on;
gzip_vary on;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_types text/plain application/xml text/css application/javascript;
2. Statik Dosyalar İçin Cache-Control Başlıkları Ayarlayın
Web sitenizde sıkça değişmeyen resimler, CSS ve JavaScript dosyaları gibi statik içerikler varsa, bu dosyaların cache (önbellek) kontrolünü yaparak hızınızı artırabilirsiniz. Tarayıcıların bu dosyaları yeniden indirmesini engellemek, yükleme sürelerini azaltacaktır. Nginx ile aşağıdaki şekilde ayarlama yapabilirsiniz:
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff|woff2)$ {
expires 30d;
add_header Cache-Control "public, no-transform";
}
3. HTTP/2 Protokolünü Etkinleştirin
HTTP/2, daha hızlı veri iletimi sağlamak için geliştirilmiş yeni bir protokoldür. Bu protokol, birden fazla isteği aynı anda gönderebilmenize olanak tanır ve sayfa yükleme hızını önemli ölçüde artırır. Nginx’te HTTP/2’yi etkinleştirmek için aşağıdaki ayarı yapabilirsiniz:
server {
listen 443 ssl http2;
server_name example.com;
...
}
4. Nginx ile Reverse Proxy Kullanarak Yük Dengeleme Yapın
Büyük web siteleri ve uygulamalarda, trafiği doğru şekilde dağıtmak oldukça önemlidir. Yük dengeleme sayesinde, birden fazla sunucu arasında gelen trafiği paylaştırabilirsiniz. Nginx’i reverse proxy olarak kullanarak yük dengeleme yapabilirsiniz. İşte basit bir örnek:
upstream backend {
server backend1.example.com;
server backend2.example.com;
}
server {
location / {
proxy_pass http://backend;
}
}
5. SSL/TLS Performansını Artırın
SSL sertifikaları güvenlik açısından önemli olsa da, sitenizin hızını etkileyebilir. Ancak, SSL/TLS optimizasyonu ile bu etkiyi en aza indirebilirsiniz. Nginx’te SSL performansını artırmak için aşağıdaki ayarları yapabilirsiniz:
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
ssl_protocols TLSv1.2 TLSv1.3;
6. Nginx ile Sıkça Kullanılan Dosyaları Belleğe Alın (Caching)
Nginx’in içerik önbellekleme özelliğini kullanarak, sık kullanılan dosyaları belleğe alabilirsiniz. Bu, sunucunuzdan gelen her istekte dosyaları tekrar yüklemek yerine, bellekteki dosyaları hızla sunmanıza olanak tanır. İşte bu özelliği kullanmanın basit bir örneği:
location / {
proxy_cache my_cache;
proxy_cache_valid 200 1h;
proxy_cache_use_stale error timeout updating;
}
7. Max Body Size Ayarlarını Yapın
Nginx’te, istemciden gelen veri boyutunu sınırlayarak sunucunuzun fazla yüklenmesini engelleyebilirsiniz. Bu ayar, büyük dosya yüklemeleri veya formlarının önlenmesine yardımcı olur:
client_max_body_size 10M;
8. FastCGI ve PHP-FPM Performansını Artırın
Eğer siteniz dinamik içerik kullanıyorsa, FastCGI ve PHP-FPM ile performansı artırabilirsiniz. PHP-FPM, PHP dosyalarını hızlı bir şekilde işlemek için kullanılan bir uygulamadır ve Nginx ile uyumludur. PHP-FPM performans ayarlarını optimize etmek için şu adımları izleyebilirsiniz:
fastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=MYZONE:10m inactive=60m max_size=1g;
fastcgi_cache MYZONE;
9. Nginx ile WebSockets Destekleyin
Gerçek zamanlı web uygulamaları için WebSockets kullanıyorsanız, Nginx üzerinden WebSockets’i desteklemek önemlidir. Bu özellik, canlı sohbetler, bildirimler veya oyunlar gibi uygulamaları hızlandırabilir:
location /ws/ {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
}
10. Nginx’in Eklenti Yönetimini Kullanın
Nginx, modüler yapısı sayesinde ihtiyaçlarınıza göre eklentilerle genişletilebilir. SEO ve hız artırma konusunda faydalı olan birkaç eklenti kullanarak sitenizin performansını artırabilirsiniz.
Ayrıca, gereksiz eklentileri devre dışı bırakmak da önemli bir hız optimizasyonudur.
Sonuç
İnternette hız önemli bir faktördür ve web sitenizin hızı sadece kullanıcı deneyimi açısından değil, aynı zamanda SEO başarısı için de kritik bir rol oynar. Nginx, web sitenizin hızını artırmak için oldukça güçlü bir araçtır. Yukarıda paylaştığım 10 ipucuyla sitenizi hızlandırarak, SEO sıralamalarında öne çıkabilirsiniz. Unutmayın, küçük adımlar büyük farklar yaratabilir!