У меня есть страница, которая позволяет пользователям загружать изображения.
Он возвращает ошибку 500, когда пользователь пытается загрузить большие изображения.
Следующий код …
<?php echo ini_get("upload_max_filesize"); echo ini_get("post_max_size"); echo ini_get("max_input_time"); echo ini_get("max_execution_time"); ?>
… возвращается:
100M 100M 60 3600
Я предполагаю, что это максимальное время ввода, которое вызывает проблему, поскольку я тестировал файлы под 100 МБ, но занимает более 60 секунд для загрузки.
У меня нет доступа с моим хостом к файлу php.ini, поэтому я могу переопределить эти параметры? Я попытался добавить файл htaccess, но я не уверен, что поставил его в нужное место.
Поместите файл .htaccess в корневую папку вашего сайта (где ваш php-скрипт) и добавьте следующие значения:
php_value upload_max_filesize 100M php_value post_max_size 100M php_value max_execution_time 200 php_value max_input_time 200
Конечно, вы можете установить другие размеры и временные рамки. Это должно сработать.
Настройка директив php ini зависит от характера конфигурации вашего поставщика услуг. Запустите скрипт phpinfo (), чтобы посмотреть на вашу конфигурацию. Если ваш провайдер запускает PHP, используя suPHP в пользовательском контексте UID, он может искать php.ini в каталоге скрипта. Вот как это работает для моего хостинг-провайдера.