Назад | Перейти на главную страницу

Amazon Linux, PHP 5.5: игнорируется php.ini

На нашем экземпляре Amazon EC2 я удалил PHP5.3 (yum remove php) и установил PHP 5.5, который также входит в состав Apache 2.4 (yum install php54).

По какой-то причине мой php.ini файл больше не читается. Похоже, что он устарел, и, возможно, мне стоит использовать /etc/php-5.5.ini вместо этого - но и эту тоже не читают! (Странно, но я не могу найти никакой документации по этому поводу. Поиск в Google "php-5.5.ini" (с кавычками) не дает никаких полезных результатов! ??)

Бег php --ini, Я получаю это:

[ec2-user@ip ~]$ php --ini
Configuration File (php.ini) Path: /etc/php-5.5.d
Loaded Configuration File:         /etc/php-5.5.d/php.ini
Scan for additional .ini files in: /etc/php-5.5.d
Additional .ini files parsed:      /etc/php-5.5.d/apc.ini,
/etc/php-5.5.d/bz2.ini,
/etc/php-5.5.d/calendar.ini,
/etc/php-5.5.d/ctype.ini,
/etc/php-5.5.d/curl.ini,
/etc/php-5.5.d/dom.ini,
/etc/php-5.5.d/exif.ini,
/etc/php-5.5.d/fileinfo.ini,
/etc/php-5.5.d/ftp.ini,
/etc/php-5.5.d/gd.ini,
/etc/php-5.5.d/gettext.ini,
/etc/php-5.5.d/iconv.ini,
/etc/php-5.5.d/json.ini,
/etc/php-5.5.d/mbstring.ini,
/etc/php-5.5.d/mysqlnd.ini,
/etc/php-5.5.d/mysqlnd_mysql.ini,
/etc/php-5.5.d/mysqlnd_mysqli.ini,
/etc/php-5.5.d/pdo.ini,
/etc/php-5.5.d/pdo_mysqlnd.ini,
/etc/php-5.5.d/pdo_sqlite.ini,
/etc/php-5.5.d/phar.ini,
/etc/php-5.5.d/php.ini,
/etc/php-5.5.d/posix.ini,
/etc/php-5.5.d/shmop.ini,
/etc/php-5.5.d/simplexml.ini,
/etc/php-5.5.d/sockets.ini,
/etc/php-5.5.d/sqlite3.ini,
/etc/php-5.5.d/sysvmsg.ini,
/etc/php-5.5.d/sysvsem.ini,
/etc/php-5.5.d/sysvshm.ini,
/etc/php-5.5.d/tokenizer.ini,
/etc/php-5.5.d/xml.ini,
/etc/php-5.5.d/xml_wddx.ini,
/etc/php-5.5.d/xmlreader.ini,
/etc/php-5.5.d/xmlwriter.ini,
/etc/php-5.5.d/xsl.ini,
/etc/php-5.5.d/zip.ini

Здесь нет ни одного ini-файла. Есть /etc/php-5.5.d/php.ini, но оно пустое, за исключением этого сообщения: ; The php.ini file has moved to /etc/php-5.5.ini.

Но опять же, /etc/php-5.5.ini тоже не читается ...

Я не уверен, что здесь означает схема именования ".d" - это "по умолчанию", "демон" или что-то еще?

Что я могу сделать, чтобы прочитать любой из этих INI-файлов? Или мне просто нужно все бросить в /etc/php-5.5.d/php.ini?

Ваш PHP настроен на чтение всех .ini файлы в /etc/php-5.5.d папка. Это позволяет логически разделить настройки - настройки APC входят в apc.ini, memcached входит memcached.ini, и т.д.

Вы можете поместить любые настройки, которые хотите изменить, в /etc/php-5.5.d/php.ini или создайте новый .ini в папке. /etc/php-5.5.d/DOOManiac.ini будет работать нормально, например.

Что касается .d папки: https://unix.stackexchange.com/questions/4029/what-does-the-d-stand-for-in-directory-names