Limit rozmiaru przesyłanego pliku w PHP w kontenerze

Wracamy jeszcze na chwilę do naszych kontenerów :)


Ostatnio pojawił się ciekawy problem. Mianowicie użytkownik strony mógł wrzucić plik ważący maksymalnie 2 MB. Nic dziwnego - początkowe ustawienia PHP pozwalają na wrzucenie plików właśnie w takim rozmiarze.


Szybko można wygooglować, gdzie należy zmienić wartości, aby móc wrzucać pliki w większym rozmiarze.

Ok, zmieniliśmy, zrestartowaliśmy serwer i .... nadal nic !

Długo się nagłowiłem dlaczego tak jest ale znalazłem rozwiązanie.

Jeśli w PHP ustawimy na kontenerze rozmiar, to musimy też ustawić w przekierowaniu na matce (opcja client_max_body_size -> 0 = no limit):

 

server {
        #root /usr/share/nginx/www;
        #index index.html index.htm;

        client_max_body_size 0; #ustawienie dla nginxa na rozmiar pliku no limit.

        server_name DOMENKA;

        location / {
                proxy_set_header X-Real_IP $remote_addr;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded_For $proxy_add_x_forwarded_for;
                proxy_pass http://IP_KONTENERA:80/;
        }
}

Teraz już możemy dodawać pliki w dowolnym rozmiarze :)