私の会社では、開発サーバーの 1 つで、コーダー チームが既存の製品のアップグレード バージョンを開発できるようにしたいという動機があります。構成には 2 つあり、現在使用している構成と、クリーン スレートの PHP/Apache インストール (ただし、可能であれば同じサーバー) にインストールすることを推奨する新しい構成です。質問は、同じサーバーにphp.ini
との異なる 2 セットを配置することは可能でしょうかhttpd.conf
。1 つは現在の製品を指し、もう 1 つはアップグレード/更新された製品を指します。
答え1
apachectl の -f フラグを使用すると、異なる構成で複数のインスタンスを起動できます。例:
apachectl -f /etc/httpd-1.conf start
apachectl -f /etc/httpd-2.conf start
一方、これらのファイルのサイト定義では、次のディレクティブ
PHPINIDir /etc/php1
設定しているインスタンスのmod_phpにphp.iniを探す場所を伝えます
また、経験から言うと、おそらくこれを長時間続けることは望ましくないでしょう。
さて、これをシステムの init スクリプトで動作させるのは面倒な場合があります。私の記憶が正しければ、FreeBSD や Debian 由来のものでは比較的苦労しませんが、RedHat 由来のものではそれほど苦労しません。個人的には、実稼働サーバーは init スクリプトで制御し、テスト サーバーは apachectl などで手動で実行することをお勧めします。