Загрузка файлов в PHP
Поставил движок на PHP (будь то WordPress или что-то ещё), решил залить файл — а в ответ ничего: либо сервер говорит «The server cannot process the image».
Причина в том, что PHP по умолчанию не позволяет загружать файлы большого размера.
В таком случае установим дополнительные модули:
apt update
apt install php-dom php-imagick php-zip php-intl
Открываем конфиг (если не 8.1, то укажите свою):
nano /etc/php/8.1/fpm/php.ini
Находим следующие параметры и меняем на нужные величины:
memory_limit = 1024M
upload_max_filesize = 128M
post_max_size = 128M
max_execution_time = 500
max_input_time = 500
На всякий случай в конфиг Nginx добавим:
nano /etc/nginx/nginx.conf
## Basic Settings
client_max_body_size 128M;
sendfile on;
tcp_nopush on;
types_hash_max_size 2048;
Можно еще дополнительно установить gd:
apt install php-gd
Ну и естественно в конце перезапустим:
systemctl restart php8.1-fpm nginx
Описание, если веб-сервер Nginx, у Apache чуть по-другому, но суть такая же.