Nginx'te Dosya Yükleme Boyutu Nasıl Sınırlandırılır


Son yazımızda Apache'de kullanıcı dosyası yükleme boyutunun sınırlandırılması konusunu anlatmıştık. Bu makalede Nginx'te kullanıcı dosyası yükleme boyutunun nasıl sınırlandırılacağını açıklayacağız. Dosya yükleme boyutunu kısıtlamak, bazı hizmet reddi (DOS) saldırı türlerini ve diğer birçok ilgili sorunu önlemek için kullanışlıdır.

Varsayılan olarak Nginx'in dosya yükleme sınırı 1 MB'tır. Dosya yükleme boyutunu ayarlamak için Nginx'in ngx_http_core_module modülünün bir parçası olan client_max_body_size yönergesini kullanabilirsiniz. Bu yönerge http, sunucu veya konum bağlamında ayarlanabilir.

"Content-Length" istek başlığı alanında belirtilen, istemci istek gövdesinin izin verilen maksimum boyutunu ayarlar. Burada /etc/nginx/nginx.conf dosyasında sınırın 100 MB'a çıkarılmasına ilişkin bir örnek verilmiştir.

Tüm sunucu bloklarını (sanal ana bilgisayarlar) etkileyen http bloğu'nda ayarlayın.

http {
    ...
    client_max_body_size 100M;
}    

Belirli bir siteyi/uygulamayı etkileyen sunucu bloğunda ayarlayın.

server {
    ...
    client_max_body_size 100M;
}

Bir site/uygulama altındaki belirli bir dizini (yüklemeleri) etkileyen konum bloğunda ayarlayın.

location /uploads {
    ...
    client_max_body_size 100M;
} 

Dosyayı kaydedin ve aşağıdaki komutu kullanarak son değişiklikleri uygulamak için Nginx web sunucusunu yeniden başlatın.

systemctl restart nginx       #systemd
service nginx restart         #sysvinit

Değişiklikleri kaydettikten ve HTTP sunucusunu yeniden başlattıktan sonra, bir isteğin boyutu yapılandırılan 100 MB değerini aşarsa 413 (İstek Varlığı Çok Büyük) hatası döndürülür Müşteriye.

Not: Bazen tarayıcıların bu hatayı doğru şekilde görüntülemeyebileceğini aklınızda bulundurmalısınız. Ve bir değerin (boyut) 0 olarak ayarlanması, istemci isteği gövde boyutunun kontrolünü devre dışı bırakır.

Nginx web sunucusu yönetimiyle ilgili aşağıdaki makaleleri de okumak isteyebilirsiniz.

  1. Linux'ta Nginx Bağlantı Noktası Nasıl Değiştirilir
  2. Linux'ta Nginx Sunucu Sürümü Nasıl Gizlenir
  3. ngxtop - Linux'ta Nginx Günlük Dosyalarını Gerçek Zamanlı Olarak İzleyin
  4. Netdata Kullanılarak Nginx Performansı Nasıl İzlenir
  5. NGINX Durum Sayfasını Etkinleştirme

Bu kadar! Bu kısa yazımızda Nginx'te kullanıcı dosyası yükleme boyutunun nasıl sınırlandırılacağını anlattık. Aşağıdaki yorum formunu kullanarak düşüncelerinizi bizimle paylaşabilirsiniz.