Rozdział 14 · 14.3
Opcje PHP: upload_max_filesize, memory_limit i max_execution_time
Zobacz w krótkim filmie
Do PHP należą ustawienia, które określają, na co stać skrypt: jak duży może być przesyłany plik, ile pamięci może wykorzystać skrypt i jak długo może działać. Te ustawienia dostosowuje Pan/Pani samodzielnie w Select PHP version, na karcie Options. Nie są więc potrzebne plik php.ini ani reguły w .htaccess.
Jak dostosować opcję
- W DirectAdmin pod Dodatkowe funkcje proszę kliknąć Select PHP version.
- Przy PHP version proszę sprawdzić, czy wybrana jest właściwa wersja. Opcje ustawia się dla każdej wersji osobno.
- Proszę kliknąć kartę Options.
- Proszę kliknąć wartość przy opcji, którą chce Pan/Pani zmienić, i wybrać lub wpisać nową wartość.

Nowa wartość zostaje od razu zapisana i obowiązuje natychmiast dla wszystkich stron w Pana/Pani pakiecie, które korzystają z tej wersji PHP.
Najważniejsze opcje
| Opcja | Co robi? | Kiedy zwiększyć? |
|---|---|---|
| upload_max_filesize | Jak duży może być jeden przesyłany plik. | Gdy chce Pan/Pani przesłać duży motyw, film lub kopię zapasową i pojawia się komunikat, że plik jest za duży. |
| post_max_size | Jak duże może być wszystko razem, co jest wysyłane jednocześnie (plik plus formularz). | Zawsze razem z upload_max_filesize. Proszę ustawić post_max_size co najmniej na tę samą wartość, najlepiej nieco wyższą. |
| memory_limit | Ile pamięci może wykorzystać jeden skrypt PHP. | Przy komunikacie "Allowed memory size of ... bytes exhausted" lub gdy wtyczka prosi o więcej pamięci. 256M wystarcza dla większości stron. |
| max_execution_time | Ile sekund może działać skrypt, zanim zostanie przerwany. | Przy imporcie, eksporcie lub migracji, która zatrzymuje się w połowie z komunikatem "Maximum execution time exceeded". |
| max_input_time | Ile czasu może zająć PHP odebranie przesyłanego pliku lub formularza. | Przy dużych przesyłanych plikach przez wolne połączenie. |
| max_input_vars | Ile pól może mieć formularz. | Gdy duże menu lub strona z wieloma opcjami w WordPress nie zapisuje się w całości. Proszę ustawić wtedy na przykład 3000 lub 5000. |
| display_errors | Wyświetla błędy PHP bezpośrednio na stronie. | Tylko tymczasowo, aby znaleźć błąd. Proszę potem ponownie wyłączyć: odwiedzający nie muszą widzieć komunikatów o błędach. |
| date.timezone | Strefa czasowa dla dat i godzin. | Jest już ustawiona na Europe/Amsterdam. Proszę zmieniać tylko wtedy, gdy strona ma działać w innej strefie czasowej. |
Uwaga: Wyższe wartości nie zawsze są lepsze. Skrypt, który potrzebuje dużo pamięci lub czasu, wlicza się do limitów Pana/Pani pakietu (zob. Resource Usage: CPU, pamięć i procesy). Proszę więc zwiększać wartość tylko wtedy, gdy jest to konieczne, a nie "na wszelki wypadek" ustawiać maksimum.
Przykład: przesyłanie dużego pliku
Chce Pan/Pani za pomocą wtyczki do migracji przesłać kopię zapasową o rozmiarze 200 MB, ale pojawia się komunikat, że plik jest za duży. Proszę wtedy ustawić:
- upload_max_filesize na 256M;
- post_max_size na 256M lub wyższą wartość;
- ewentualnie nieco wyższe max_execution_time i max_input_time, na przykład 300.
Proszę następnie odświeżyć stronę wtyczki. Nowy limit zwykle pojawia się tam od razu. Jeśli nadal się nie udaje, proszę zapoznać się z Zbyt duży plik do przesłania (błąd 413) lub przekroczenie czasu oczekiwania.
Czy można to zrobić również w Mijn WebOké?
Tak, w przypadku najczęściej używanych opcji. Proszę zapytać asystenta AI w Mijn WebOké na przykład "Ustaw upload_max_filesize na 256M". Asystent może zmienić za Pana/Panią memory_limit, upload_max_filesize, post_max_size, max_execution_time, max_input_time, max_input_vars i display_errors w Select PHP version, dla wersji PHP, z której Pana/Pani pakiet aktualnie korzysta. Najpierw zobaczy Pan/Pani, co się zmieni, a następnie samodzielnie kliknie Zatwierdź i wykonaj.
Najczęściej zadawane pytania
Zwiększyłem/zwiększyłam wartość, ale moja strona nadal pokazuje starą wartość.
Proszę sprawdzić, czy opcja została zmieniona przy wersji z dopiskiem (current). Proszę też sprawdzić, czy w pliku .htaccess nie znajduje się jeszcze stara reguła, na przykład php_value upload_max_filesize, lub czy przy PHP Instellingen nie ma nadpisania dla Pana/Pani domeny (zob. PHP Instellingen w DirectAdmin a Select PHP version: jaka jest różnica?). Te mają pierwszeństwo.
Jakie jest maksimum?
Na karcie Options przy niektórych opcjach można wybrać tylko z listy. Potrzebuje Pan/Pani więcej niż można tam wybrać, na przykład do dużego importu? Wtedy można ustawić wyższą wartość za pomocą reguły w pliku .htaccess (zob. Ustawienia PHP dla poszczególnych katalogów i przez .htaccess) lub zgłosić zgłoszenie.
Dlaczego widoczne są disable_functions i open_basedir?
Służą one bezpieczeństwu Pana/Pani strony oraz serwera. Proszę pozostawić je bez zmian.
