私のサーバーでは、CageFSとPHP Selectorを使用してCloudlinux 5.11を実行しています。デフォルトのPHPバージョンは5.3です。
PHP 5.3を使用するアカウントが1つ、PHP 5.5を使用するアカウントが1つ、PHP 5.6を使用するアカウントが1つあります。
各アカウントのphp.iniまたは各PHPバージョンのデフォルトphp.iniを更新する方法を見つけようとしています。
これまで、PHP 5.3のデフォルトのphp.iniを更新する方法を見つけました。
PHP 5.3アカウントのphpinfo
は、ロードされた構成ファイルが/usr/selector.etc/php.ini
からのものであることを示しています。
/usr/local/lib/php.iniを更新します
cagefsctl --force-update
を実行します
Apacheを再構築する
次に、変更された/usr/local/lib/php.ini
がphpinfo
に反映されます。
ただし、PHP 5.5の場合。および5.6アカウントでは、デフォルトのphp.iniを更新する方法がわかりません。
phpinfo
は、ロードされた構成ファイルが/opt/alt/php55/etc/php.ini
および/opt/alt/php56/etc/php.ini
からのものであることを示します
それらのファイルを更新する
cagefsctl --force-update
を実行します
Apacheを再構築する
その後、これらのphp.iniの変更は元に戻されます!これらのPHPバージョンのデフォルトのphp.iniを変更する適切な場所はどこですか?
各PHPバージョンのデフォルトのphp.iniを更新できればうまくいきますが、各ドメインアカウント(または各フォルダー)が独自の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については、 here を確認してください