1

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

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

Есть ли способ заставить PHP проверять наличие "исправляющего" файла php.ini?

2 ответа2

2

PHP загружает дополнительные файлы .ini из определенного каталога. В коробке с Debian 8 этот каталог: /etc/php5/apache2/conf.d .

Файлы в этом каталоге загружаются в алфавитном порядке, поэтому при именовании файла 00-overrides.ini (например) он будет загружен первым. Настройки, установленные в этом файле, переопределяют настройки, установленные в php.ini по умолчанию.

0

Если вы используете PHP как модуль Apache, есть директива для установки пути к каталогу, где PHP будет искать php.ini:

LoadModule php5_module "c:/php/php5apache2.dll"
AddHandler application/x-httpd-php .php

# configure the path to php.ini
PHPIniDir "C:/php"

Пример для Windows, но работает так же для систем Linux.

Обратите внимание, что php.ini в указанном месте заменит php.ini в расположении по умолчанию, он не будет переопределять или расширять его каким-либо образом.

Таким образом, когда вы обновляете PHP, он будет перезаписывать php.ini в расположении по умолчанию, но не в вашем собственном php.ini.

Ссылка: http://php.net/manual/en/install.windows.apache2.php#install.windows.apache2.module

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .