Я пытаюсь установить memory_limit на 512M, но это locekd для 256M.
ini_set('memory_limit','512M'); ini_get('memory_limit'); //> Returns: 256M
Я полностью контролирую свой сервер. (это посвященный)
Обратите внимание, что все под 512M работает.
ini_set('memory_limit','16M'); ini_get('memory_limit'); //> Returns: 16M
Я узнал, почему. В php.ini я имел memory_limit = 256M
. Возможно, это считается верхним пределом
3 возможных Я могу придумать / найти:
До PHP 5.2.1 для использования этой директивы он должен был быть включен во время компиляции с использованием –enable-memory-limit в строке configure.
ИЛИ
Проблема, подробно описанная здесь: ini_set ("memory_limit") в PHP 5.3.3 не работает вообще
ИЛИ
ini_set отключено
Вы также можете попытаться изменить memory_limit с помощью файла php.ini или .htaccess
php.ini
memory_limit = 512M;
.htaccess
php_value memory_limit 512M
Я заметил, что на моем Mac (OS X El Capitan) и новом PHP 7.0.0 я не могу изменить memory_limit через php.ini
Но я могу изменить его через /etc/apache2/httpd.conf, добавив строку в конец:
php_value memory_limit 1024M
и перезапуск сервера Apache:
Перезагрузка sudo apachectl
И это правильный php.ini, я могу изменить другие настройки через него.
Вы можете проверить свой конфигурационный файл php.ini в директиве «disable_functions». Проверьте, отключена ли функция ini_set.
Кроме того, если safe_mode включен, такой параметр не может быть переопределен.
Я узнал, почему. В php.ini я имел memory_limit = 256M
. Возможно, это считается верхним пределом.
Я подчёркивал это до своей потребности.
Немного поздно, но редактирование файла php.ini не работает для php 7.1 с использованием Mac OS 10.11.6. Я все еще продолжал получать «PHP Fatal error: Allowed memory size of ….», который по своему значению показал, что параметр памяти не обновлялся после запуска apache.
Поэтому вместо редактирования файла.
/usr/local/php5/lib/php.ini
Я обнаружил, что изменение следующего файла исправило эту проблему.
/usr/local/php5/php.d/99-liip-developer.ini
Этот файл фактически заменил значения, установленные в исходном файле php.ini. Снова внесение следующих изменений в строку …
memory_limit = 256M
в
memory_limit = 1024M
И перезапуск apache.
sudo /usr/sbin/apachectl restart