Где хранятся настройки PHP
PHP-параметры можно задавать в нескольких местах. Приоритет (от высшего к низшему): ini_set() в коде → .user.ini → .htaccess → php.ini. Изменения в php.ini требуют перезапуска PHP-FPM.
Ключевые параметры PHP
| Параметр | По умолчанию | Рекомендуется | Описание |
|---|---|---|---|
memory_limit | 128M | 256–512M | Лимит памяти на один PHP-процесс |
upload_max_filesize | 2M | 64–256M | Максимальный размер загружаемого файла |
post_max_size | 8M | Больше upload_max_filesize | Максимальный размер POST-запроса |
max_execution_time | 30 | 60–300 | Максимальное время выполнения скрипта (сек) |
max_input_time | 60 | 120–300 | Время на получение входных данных |
max_input_vars | 1000 | 3000–5000 | Максимум переменных в POST/GET/COOKIE |
Изменение через php.ini
# Найти актуальный php.ini
php --ini
# Редактировать (для PHP-FPM)
sudo nano /etc/php/8.2/fpm/php.inimemory_limit = 512M
upload_max_filesize = 128M
post_max_size = 130M
max_execution_time = 300
max_input_time = 300
max_input_vars = 5000post_max_size должен быть больше upload_max_filesize, иначе большие файлы не будут загружаться. Правило: post_max_size = upload_max_filesize + 2–10 МБ.
Изменение через .user.ini (для shared hosting)
Создайте файл .user.ini в корне сайта:
memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 68M
max_execution_time = 120Изменение через .htaccess (для Apache)
php_value memory_limit 256M
php_value upload_max_filesize 64M
php_value post_max_size 68M
php_value max_execution_time 120Изменение в коде PHP (временно)
<?php
ini_set('memory_limit', '512M');
ini_set('max_execution_time', '300');
set_time_limit(300);Применение изменений php.ini
sudo systemctl reload php8.2-fpm
# Проверка применённых значений
php -r "echo ini_get('memory_limit');"Для WordPress добавьте в
wp-config.php: define('WP_MEMORY_LIMIT', '256M'); — это устанавливает лимит памяти для WordPress, но не может превысить системный memory_limit в php.ini.