V tomto článku se podíváme na postup nastavení limitu velikosti uploadu na serveru běžícím na CentOS 7 s webovým serverem Nginx a PHP-FPM. Změna limitu velikosti uploadu je užitečná pro řízení velikosti souborů, které mohou uživatelé nahrávat na server, a může pomoci předejít přetížení serveru velkými soubory. Provedení této změny vyžaduje úpravy konfiguračních souborů jak pro Nginx, tak pro PHP-FPM.
1. Úprava konfiguračního souboru Nginx
Nginx používá direktivu client_max_body_size
k omezení velikosti těla požadavku, které může obsahovat uploadované soubory. Výchozí hodnota je obvykle 1M (1 megabyte). Pro změnu tohoto limitu je potřeba upravit konfigurační soubor pro váš server nebo lokaci.
Krok 1: Otevřete konfigurační soubor Nginx.
Konfigurační soubory pro Nginx se obvykle nacházejí v /etc/nginx/nginx.conf
nebo v adresáři /etc/nginx/conf.d/
pro specifické konfigurace serverů. Otevřete soubor pomocí textového editoru, například vim:
sudo vim /etc/nginx/nginx.conf
Krok 2: Přidejte nebo upravte direktivu client_max_body_size
.
Najděte sekci http
, server
nebo location
, kam chcete limit aplikovat, a přidejte nebo upravte direktivu client_max_body_size
, aby odpovídala požadované maximální velikosti uploadu. Například pro limit 100 megabytů:
client_max_body_size 100M;
Krok 3: Restartujte Nginx.
Aby se změny projevily, je potřeba restartovat Nginx:
sudo systemctl restart nginx
2. Úprava konfiguračního souboru PHP-FPM
PHP také omezuje velikost nahrávaných souborů pomocí direktiv upload_max_filesize
a post_max_size
v konfiguračním souboru php.ini
.
Krok 1: Najděte konfigurační soubor php.ini
.
Umístění souboru php.ini
závisí na verzi PHP, kterou používáte. Můžete použít následující příkaz k zjištění umístění:
php --ini
Krok 2: Upravte php.ini
pro změnu limitů.
Otevřete soubor php.ini
ve vašem preferovaném editoru a najděte direktivy upload_max_filesize
a post_max_size
. Nastavte je na požadovanou maximální velikost uploadu. Například pro limit 100M:
upload_max_filesize = 100M
post_max_size = 100M
Krok 3: Restartujte PHP-FPM.
Pro aplikaci změn je potřeba restartovat službu PHP-FPM:
sudo systemctl restart php-fpm
Nastavením limitů velikosti uploadu v konfiguračních souborech Nginx a PHP-FPM můžete efektivně kontrolovat velikost souborů, které uživatelé mohou nahrávat na váš server. Tato nastavení pomáhají zajistit, že server nebude přetížen velkými soubory, což může vést k jeho nestabilitě nebo snížení výkonu. Po provedení těchto změn je vždy důležité restartovat příslušné služby, aby se nová konfigurace použila.