Найти правильный файл php.ini

В настоящее время я пытаюсь найти правильный файл php.ini, чтобы отредактировать его и перезапустить apache, чтобы изменения произошли, и я в тупике.

Я нашел три разных файла php.ini (не знаю, почему их три)  вот как я нашел файлы

$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini

Я тоже сделал ....

$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini

Я изменил их все (просто, чтобы быть уверенным) на нужные мне настройки.

Я перезапустил apache с помощью

sudo service apache2 restart

Результаты ...

* Restarting web server apache2

Я перезагрузил страницу и показал, что файл php.ini не обновлен.

Я знаю это, потому что использовал

echo ini_get('post_max_size');

Что должно было быть изменено на 20M, но все еще было только 2M

Я попытался перезагрузить компьютер, думая, что это остановит сервер Apache и перезагрузит файл php.ini с правильной настройкой, но, увы, эта попытка также не удалась.

Есть ли шанс, что может быть другой файл php.ini, который может мешать?

146 голосов | спросил Michael 12 +04002013-10-12T04:19:55+04:00312013bEurope/MoscowSat, 12 Oct 2013 04:19:55 +0400 2013, 04:19:55

4 ответа


251

Три файла, которые у вас есть, предназначены для разных целей.

/etc/php/5.6/cli/php.ini предназначен для программы CLI PHP, которую вы обнаружили при запуске php на терминале.

/etc/php/5.6/cgi/php.ini предназначен для системы php-cgi, которая специально не используется в этой настройке.

/etc/php/5.6/apache2/php.ini предназначен для плагина PHP, используемого Apache. Это тот, который вам нужно отредактировать для изменений, которые будут применяться для вашей установки Apache.

/etc/php/5.6/fpm/php.ini предназначен для процессора php5-fpm, который является совместимым с fastcgi «оболочкой» для обработки PHP ( например, для передачи из NGINX в php5-fpm) и выполняется как автономный процесс в системе (в отличие от плагина Apache PHP)

  

Для версий Ubuntu ниже , чем 16.04, /etc/php/5.6/, /etc/php/7.0/, /etc/php/7.1/ и т. д., заменяются на /etc/php5/ и так далее. В противном случае эти пути остаются точными. Адаптируйте это соответственно для своей среды, заменив 5.6 или номер фактической папкой версии, существующей в вашей среде.

ответил Thomas Ward 12 +04002013-10-12T06:49:35+04:00312013bEurope/MoscowSat, 12 Oct 2013 06:49:35 +0400 2013, 06:49:35
19

Попробуйте запустить сценарий, содержащий этот фрагмент в вашем браузере <?php phpinfo(); ?>, а затем попытайтесь найти что-то вроде Загруженный файл конфигурации . Эта запись указывает php.ini, используемый вашим PHP на сервере Apache.

ответил Justin Paul Paño 5 22013vEurope/Moscow11bEurope/MoscowTue, 05 Nov 2013 15:30:39 +0400 2013, 15:30:39
11

для php7 ubuntu 16.4

/etc/php/7.0/apache2/php.ini
ответил Softmixt 21 AM000000100000004531 2016, 10:45:45
7

Чтобы узнать, какой php.ini используется CLI, вы можете запустить:

php -i | grep 'php.ini'

Пример вывода:

$ php -i | grep 'php.ini'

Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini
ответил Gianfranco P. 27 J0000006Europe/Moscow 2017, 18:54:49

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132