Где MAMP хранит свой php.ini?


92

У меня недавно появился Mac, и я вообще не привык работать на Mac.

У меня MAMP Pro 1.9.6.1. Я определил местонахождение php.iniи получил следующее:

$ locate php.ini
/Applications/MAMP/conf/php5.2/php.ini
/Applications/MAMP/conf/php5.3/php.ini
/Library/Application Support/appsolute/MAMP PRO/conf/php.ini
/private/etc/php.ini.default

Я изменил им название. Перезапустил МАМП. Загрузился без сучка и задоринки (странно, правда?). Я использую PHP версии 5.2.

Все эти файлы теперь имеют разные имена (выполняются один за другим для удаления). Итак, я думаю, перезагрузите Mac. То же самое, MAMP загрузился без проблем, хотя все php.iniфайлы были перемещены. На лампе это даже не загружается. Но либо есть другой php.iniфайл, который мне не хватает (вполне возможно, я не знаю, как это сделать updatedb), MAMP действительно умный и просто втягивает их все (что менее вероятно), либо он не использует его.


2
MAMP Pro использует динамическую генерацию php.ini. Вам необходимо отредактировать шаблон.
Florent

Рикардо Мартинс: Должен быть правильный ответ, Джеймс ...
Джонатан Солорзано

Я использую MAMP 4 (бесплатно), и мой путь к php.ini/Applications/MAMP/bin/php/php7.1.1/conf/php.ini
Гэвин

Ответы:


133

Примечание. Если это не помогает, проверьте ниже ответ Рикардо Мартинса.


Создайте сценарий PHP с <?php phpinfo() ?>ним, запустите его в своем браузере и найдите значение Loaded Configuration File. Это говорит вам, какой php.iniфайл PHP использует в контексте веб-сервера.


7
Его извлекают отсюда / Библиотека / Поддержка приложений / appsolute / MAMP PRO / conf / php.ini, но, похоже, он перезагружает его при каждом запуске
Джеймс Винс

4
или вы даже можете запустить echo '<?php phpinfo() ?>'|phpс терминала.
phyatt 01

4
Или просто php -i(легче читать и короче echo '<?php phpinfo() ?>'|php). Примечание: иногда консольная версия php использует другой php.iniфайл и может иметь другие настройки, чем CGI или Apache PHP.
drew010

5
на панели mamp на localhost вы можете просто щелкнуть php.info из меню
Alex Borsody

1
Требуется перезапуск сервера для применения изменений php.ini.
Krzysztof Przygoda

75

Я не уверен, что в MAMP (не PRO) то же самое, но MAMP переопределяет измененное при php.iniкаждом запуске.

В моем случае мне нужно было использовать меню MAMP, чтобы изменить my php.ini file( File -> Edit Template -> PHP -> PHP 5.xx -> php.ini).


MAMP (не Pro) v2.2, похоже, не имеет этой опции (или меню «Файл»)
Тейлор Эдмистон,

@tedmiston: Если вы не видите меню «Файл», возможно, вы активировали опцию «скрыть символ док-станции». Если вы отключите это, вы снова сможете увидеть меню файлов.
Qullbrune

1
@tt_de У меня показан значок док-станции, но даже в версии 3 в строке меню написано: «MAMP, Edit, Servers, Tools, Help». Есть ли шанс, что вы на машине с Linux? Возможно, они поместили пункты меню MAMP в File на платформах, отличных от OS X. Тем не менее, у меня нет «Редактировать шаблон» ни в одном меню, но я могу редактировать файлы вручную из файловой системы.
Тейлор Эдмистон

@tedmiston: Извините, у меня OS X!
Qullbrune

@tt_de Я тоже. Странный.
Тейлор Эдмистон

28

Для большей ясности (поскольку я читал эту ветку, но не ВИДЕЛ решения, даже если бы оно было здесь!), У меня та же проблема, и я нашел причину: я изменял неправильный php.ini!

Да, в MAMP есть 2 файла php.ini:

  1. Приложения / MAMP / conf / php5.5.10 / php.ini
  2. Приложения / MAMP / bin / php / php5.5.10 / conf / php.ini

Правый файл php.ini - второй: Applications / MAMP / bin / php / php5.5.10 / conf / php.ini

Чтобы доказать это, создайте файл .php (назовите его как хотите, например «info.php») и поместите в него простой phpinfo ()

<?php
echo phpinfo();

Откройте его в браузере и найдите «Загруженный файл конфигурации»: мой - «/Applications/MAMP/bin/php/php5.5.10/conf/php.ini»

Ошибка была здесь; Я редактировал Applications / MAMP / conf / php5.5.10 / php.ini, но это неправильный файл для изменения! Фактически, правильный файл php.ini находится в каталоге bin.

Позаботьтесь об этой такой маленькой разнице, которая вызвала у меня буквально полтора часа головной боли!


Точный каталог зависит от того, какую версию PHP вы используете, но да, этот путь (../MAMP/bin/php/phpX/conf/php.ini) правильный. Так же на всякий случай отредактировал файл php.ini.temp. В обоих случаях установите display_errors = On.
Джейсон Помолвка

Это тот ответ, который мне нужен, так как у меня нет версии Pro.
Dreadnought

22

Файл, который вам нужно отредактировать, находится в MAMP Pro и использует php.iniфайл при каждом запуске.

  • Запустить MAMP PRO
  • редактировать File > Edit Templates > PHP 5.3.2 php.ini
  • Перезапустите MAMP Pro

Ваши изменения должны остаться.


5

Просто запустите следующую команду со своего терминала, она покажет вам загруженный файл конфигурации самым простым способом, который я когда-либо находил.

php --ini

5

Я не знаю, находили ли вы когда-нибудь ответ на этот вопрос, но мне НЕ понадобился MAMP PRO для этого. Просто идите по правильному пути, следуя тому, что сказали другие. Это что-то вроде ...

MAMP-> bin-> php-> php (ваша версия php) -> conf-> php.ini

Ключевым моментом здесь является то, где вы редактируете файл. Я совершал ошибку, редактируя закомментированную часть ini-файла. На самом деле вам нужно прокрутить вниз до СТРОКИ № 472, где написано "display_errors = Off, и изменить ее на On. Надеюсь, это поможет любому


2

Измените /Applications/MAMP/conf/php5.2/php.ini, если вы используете версию php 5.2. Если вы используете версию PHP 5.3, отредактируйте /Applications/MAMP/conf/php5.3/php.ini.

Если вы используете OSX Lion или OSX Mountain Lion, я рекомендую вам использовать установку по умолчанию apache и php.

Приветствую!


Я думаю, что MAMP - лучший вариант, чем вариант по умолчанию, потому что он включает несколько версий PHP, а также несколько предварительно скомпилированных ускорителей PHP . Apple любезно удалила предпочтение общего доступа к сети в Mountain Lion :(. Также обратите внимание, что пути MAMP 2.x для PHP включают второстепенную версию (например MAMP/conf/php5.4.3).
Стенни

2

После запуска сервера MAMP на панели инструментов появится ссылка на информацию о php. После щелчка вы получите всю информацию о php. введите описание изображения здесь


1

Вероятно, самый быстрый способ получить доступ к PHP.ini для текущей загруженной версии PHP в MAMP PRO (v.4.2.1):

  1. Откройте MAMP Pro
  2. Нажмите «PHP» в разделе «Языки» на боковой панели.
  3. Нажмите на кнопку со стрелкой рядом с раскрывающимся списком, в котором можно выбрать версию PHP по умолчанию.

1

Это зависит от того, какую версию PHP использует ваш MAMP. Узнать это можно: /Applications/MAMP/conf/apache/httpd.confищем настроенный php5_module.

После этого, как кто-то сказал раньше, нужно перейти в binпапку. Там вы найдете confпапку с php.iniвнутренним.

пример: /Applications/MAMP/bin/php/php5.4.10/conf

Лео


1

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

Это также подтвердит, правильно ли обновились изменяемые вами параметры, такие как max_file_size.


0

У меня есть только непрофессиональная версия MAMP, но то, что она загружается, не означает, что файл PHP найден / без ошибок.

Я переименовал свои php.iniфайлы, и MAMP все еще запустился, но Apache вернул несколько ошибок.

Что вы пытаетесь изменить в своем php.ini файле?


0

Я проверил все ответы и, конечно же, использовал phpinfo (), чтобы проверить точное местоположение php.ini. Я не вижу параметра «Файл» в строке меню на моем Mac. Я изменил файлы php.ini и php.ini.temp в этой папке. Нет завесы.

Пока не понял, что забыл раскомментировать измененную строку always_populate_raw_post_data.


0

На моем Mac, работающем с MAMP, у меня есть несколько мест, которые, вероятно, могут быть php.ini, поэтому я отредактировал memory_limit на разные значения в 2 подозреваемых файлах, чтобы проверить, какой из них повлиял на фактические данные страницы MAMP PHP INFO. Сделав это, я смог определить, что это правильный php.ini: /Applications/MAMP/bin/php/php7.2.10/conf/php.ini


0

Я тоже боролся с этим. Мои изменения не отражались в phpInfo. Только когда я остановил свои серверы, а затем перезапустил их снова, мои изменения действительно вступили в силу.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.