Почему редактирование mamps php.ini не влияет

Я попытался поднять значение upload_max_filesize в php.ini (mamp 2.1.2 с версией PHP 5.4.10). Сервер работает на порту 80. Я нашел здесь несколько ответов, но на самом деле никто не подходит.

Когда я использую функцию phpinfo () для получения «Загруженного файла конфигурации», я получаю путь: /Applications/MAMP/bin/php/php5.4.10/conf/php.ini, но показанная форма конфигурации phpinfo () не соответствует конфигурации в моем php.ini.

В моем php.ini стоит upload_max_filesize = 100M phpinfo() говорит мне 2M.

После того, как я отредактировал ini, я перезапустил сервер и свою машину.

Так почему я не могу изменить upload_max_filesize?

Изменить: после установки порта на 8888 файл конфигурации загружается правильно. Может есть конфликт с Apache-сервером ОС?!


person crashbus    schedule 11.03.2013    source источник
comment
Я протестировал его с PHP 5.4.4 на MAMP, и он работает без проблем по тому же пути, который вы указали. Возможно, вы захотите сделать Stop Servers, затем выйти из MAMP и проверить Activity Monitor, если какие-либо процессы php/mysql все еще работают. В прошлом у меня были некоторые проблемы с запуском конфликтующих версий MAMP, которые на самом деле не останавливались или зависали после закрытия приложения MAMP, вызывая такие ошибочные проблемы.   -  person    schedule 11.03.2013
comment
К сожалению, это не решает моих проблем. Я перезапустил компьютер отверстия, и значения не изменились.   -  person crashbus    schedule 12.03.2013
comment
Это звучит глупо, но это случается со многими опытными пользователями. Страницы кэширования MAMP. Возможно, файл phpinfo(), который вы запускаете, по-прежнему показывает кешированную версию страницы. Также значение MASTER совпадает с вашим значением LOCAL? (два отдельных столбца в phpinfo()). В Safari вы можете очистить с помощью ALT+CMD+E. Если это не сработает; попробуйте обновиться до последней версии MAMP, а в противном случае попробуйте форумы MAMP. Это довольно странная проблема.   -  person    schedule 12.03.2013
comment
Я отключил/очистил кеш в своем браузере и в MAMP - результат тот же, кроме того, оба столбца показывают одно и то же (2M).   -  person crashbus    schedule 12.03.2013


Ответы (3)


Это связано с тем, что MAMP и MAMP PRO перезаписывают php.ini файлом шаблона при каждом запуске служб. Поэтому, чтобы внести желаемые изменения в php.ini, вам нужно изменить шаблон.

В моем случае с использованием MAMP PRO в OS X этот шаблон был найден внутри:

/Applications/MAMP PRO/MAMP PRO.app/Contents/Resources/

В этой папке вы найдете несколько версий php.ini для каждой доступной вам версии PHP. Вы захотите отредактировать файл .ini для используемой версии PHP. В моем случае это был php5.5.10.ini. После редактирования перезапустите MAMP, и ваши новые настройки должны вступить в силу.

person Sators    schedule 27.08.2014
comment
спасибо за эту информацию ... Я нашел это решение идеальным для моей проблемы. - person iMarkDesigns; 16.05.2016

Также вам нужно отредактировать: post_max_size и memory_limit

post_max_size целое число Устанавливает максимально допустимый размер данных сообщения. Этот параметр также влияет на загрузку файлов. Для загрузки больших файлов это значение должно быть больше, чем upload_max_filesize. Если ограничение памяти включено вашим скриптом configure, memory_limit также влияет на загрузку файлов. Вообще говоря, memory_limit должен быть больше, чем post_max_size. Когда используется целое число, значение измеряется в байтах. Также можно использовать сокращенную запись, описанную в этом FAQ. Если размер данных сообщения больше, чем post_max_size, суперглобальные переменные $_POST и $_FILES пусты. Это можно отслеживать различными способами, например. передав переменную $_GET сценарию, обрабатывающему данные, т. е. , а затем проверив, установлена ​​ли $_GET['processed'].

php ini core руководство

person tttony    schedule 11.03.2013
comment
Я поднял post_max_size до 100M, но эффект тот же, что и с upload_max_filesize: изменения не действуют (phpinfo показывает 8M). Единственное, что я успешно изменил, это значение memory_limit (250M). - person crashbus; 12.03.2013
comment
Какую версию вы используете? МАМП или МАМП Про? - person tttony; 12.03.2013
comment
Я использую обычный MAMP (не MAMP Pro) - person crashbus; 13.03.2013

Попробуйте отредактировать /Applications/MAMP/bin/php/php5.4.10/conf/php.ini и перезапустить сервер.

Или попробуй настроить программно

ini_set('upload_max_filesize', '100M');
person devBinnooh    schedule 11.03.2013
comment
вы можете сделать ini_set только для загрузки в .htaccess, так как php отклонит файл до того, как он попадет в php-скрипт - person Waygood; 11.03.2013
comment
php.net/manual/en/function.ini-set.php Устанавливает значение данного параметра конфигурации. Параметр конфигурации сохранит это новое значение во время выполнения скрипта и будет восстановлен в конце скрипта. - person devBinnooh; 11.03.2013
comment
Файл будет отклонен ДО выполнения сценария, поэтому он никогда не будет установлен и использован! stackoverflow.com/questions/3694114/php-file-size-limit - person Waygood; 11.03.2013