2 файлы php.ini
-
28-09-2019 - |
Вопрос
Я обнаружил, что:
Когда я ввожу следующий на терминал:
php -i | grep php.ini
Я получаю выход:
Загруженный файл конфигурации @ /etc/php5/cli/php.ini
Однако от phpinfo()
, Я посмотрю:
Загруженный файл INI IS @ /etc/php5/apache2/php.ini
Какой из них работает прямо сейчас? Как можно иметь два php.ini
файлы?
Решение
Зависит от того, где вы работаете PHP. Если вы запустите его из командной строки, он использует cli/php.ini
а также apache2/php.ini
Когда пробег через Apache.
Вы исполняете phpinfo()
через браузер, следовательно, вы получаете /etc/php5/apache2/php.ini
как ответ. Бег php -r "phpinfo();" | grep "Loaded Configuration"
От терминала следует выводить CLI III. Та же функция, изменения контекста.
Преимущество этой системы, очевидно, позволяют разные конфигурации в зависимости от контекста. Для упрощенного примера вы можете иметь safe_mode
В Apache, но это ненужно в режиме CLI.
Твой .ini
Пути на самом деле довольно необычно. Обычно по умолчанию .ini просто php.ini
и Cli .ini называется php-cli.ini
И они проживают в той же папке.
Я не эксперт по этому вопросу, но это должно быть основной идеей. Если у кого-то есть какие-то исправления, я был бы рад слышать их.