Bu yazıda, Nginx’te kullanıcı dosya 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 sorunu önlemek için faydalıdır.
Varsayılan olarak, Nginx’in dosya yüklemelerinde 1 MB sınırı vardı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. İşte /etc/nginx/nginx.conf dosyasındaki sınırın 100 MB’a çıkarılmasına bir örnek.
Tüm sunucu bloklarını (sanal ana bilgisayarlar) etkileyen http bloğunu ayarlayın.
http { ... client_max_body_size 100M; }
Belirli bir siteyi/uygulamayı etkileyen sunucu bloğunu ayarlayın.
server { ... client_max_body_size 100M; }
Bir site/uygulama altındaki belirli bir dizini (yüklemeleri) etkileyen konum bloğunu 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 istekteki boyut yapılandırılmış 100MB değerini aşarsa, istemciye 413 (İstek Varlığı Çok Büyük) hatası döndürülür.
Not: Tarayıcıların bazen bu hatayı doğru bir şekilde görüntüleyemeyebileceğini unutmamalısınız. Ve bir değerin (boyut) 0 olarak ayarlanması, boyut kontrolünü devre dışı bırakır.
Yazının orijinalini buradan okuyabilirsiniz.
![](/wp-content/uploads/2022/03/Huseyin-guc.jpeg)
Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.