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

Cloudlinux + CageFS + PHP Selector - как обновить php.ini по умолчанию для каждой версии PHP или для каждой учетной записи домена?

На моем сервере работает Cloudlinux 5.11 с CageFS и PHP Selector. Версия PHP по умолчанию - 5.3.

У меня есть одна учетная запись, использующая PHP 5.3, одна учетная запись, использующая PHP 5.5, и одна учетная запись, использующая PHP 5.6.

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

Пока что я понял, как обновить php.ini по умолчанию в PHP 5.3:

  1. phpinfo в учетной записи PHP 5.3 показывает, что загруженный файл конфигурации взят из /usr/selector.etc/php.ini.

  2. Обновите /usr/local/lib/php.ini

  3. Бегать cagefsctl --force-update

  4. Восстановить Apache

Затем модифицированный /usr/local/lib/php.ini отражается на phpinfo.

Однако для PHP 5.5. и 5.6, я не могу понять, как обновить их php.ini по умолчанию.

  1. Их phpinfo показывает загруженные файлы конфигурации из /opt/alt/php55/etc/php.ini и /opt/alt/php56/etc/php.ini

  2. Обновите эти файлы

  3. Бегать cagefsctl --force-update

  4. Восстановить Apache

После этого изменения этих php.ini отменяются! Так где же правильное место для изменения файла php.ini по умолчанию для этих версий PHP?

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

я пробовал /public_html/php.ini и /public_html/.htaccess. Они вообще не действуют. ini_set в скрипте работает, но, конечно, я не хочу отвечать только на ini_set.

Нашел ответ. Для альтернативных версий PHP процесс отличается.

После изменения /opt/alt/phpXX/etc/php.ini

Бегать cagefsctl --rebuild-alt-php-ini

Вот и все. Не нужно перестраивать apache.

Для php.ini отдельного пользователя проверьте Вот