У меня возникла странная проблема с файлом php.ini для php.ini на mac osx. Я создал файл phpinfo. Вызов его в браузере показывает настройки php с помощью –
* * Файл конфигурации (php.ini) Путь: / etc
Загруженный файл конфигурации: /private/etc/php.ini**
Однако при редактировании файла php.ini в этом месте (и, конечно же, при перезапуске Apache) изменения не отражаются в настройках php, а также в файле phpinfo. например: изменение десятичных цифр bcmath, изменение настроек часового пояса и т. д. Есть ли еще одно основное место, откуда Apache будет забирать файл настроек. Любая помощь будет высоко оценен.
Это старая должность, но у меня была эта проблема, и я пробовал Интернет безрезультатно, поэтому я здесь отвечаю за потомство.
Я использую собственный Mac OSX apache2 с домашними метками от josegonzales .
Чтобы процитировать моего друга-сисадмина, «ответ должен заключаться в перезапуске PHP-FPM вместо Apache. Apache использует mod_fastcgi для подключения к PHP через порт или сокет, с которыми PHP-FPM запускает php с».
Вам необходимо загрузить / выгрузить файл plist, связанный с установкой PHP-FPM. Первая проверка ~ / Библиотека / LaunchAgents Нет? Мина была здесь: /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist
Он перезапускается следующим образом: launchctl unload -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist && launchctl load -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist;
Я добавил следующее в свой файл ~ / .bash_profile, чтобы перезапустить PHP-FPM при перезапуске apache. Команда для вызова следующего: «apachectlrestart»
function apachectlrestart () { sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist && sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist && launchctl unload -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist && launchctl load -w /usr/local/Cellar/php53/5.3.26/homebrew-php.josegonzalez.php53.plist;}
Ответ Glassdimly помог мне решить эту проблему.
Проблема:
'Loaded configuration file'
показывает '/usr/local/etc/php/7.0/php.ini'
в phpinfo()
, и мой модуль (imagick) не загружается php.
Я попытался вручную включить мой модуль в основной файл php.ini и перезапустить apache, но 'Loaded configuration file'
не обновился.
Я попытался убить все экземпляры apache и перезапустить apache – все равно.
Я попытался переименовать свой php.ini
в php.ini_
и перезапустить apache, но 'Loaded configuration file'
по-прежнему показывает старый файл php.ini
.
Решение:
Прочитав ответ Glassdimly выше, я пробовал следующие шаги:
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist
Затем я установил функцию ярлыка внутри моего ~/.bash_profile
:
# restart php-fpm function restart_fpm(){ plist=~/Library/LaunchAgents/homebrew.mxcl.php70.plist launchctl unload -w $plist launchctl load -w $plist echo "PHP 7 fpm restarted" }
source ~/.bash_profile
загружает новую функцию в текущую оболочку Надеюсь, это поможет кому-то отчаянному Гуглеру из будущего!
перезапуск сервера apache из панели служб будет отражать ваши новые изменения.