php インストールに際しての設定

php-5.3.4 のインストール終了時に、次のようなメッセージが出力される。

* This ebuild installed a version of php.ini based on php.ini-development version.
* You can chose which version of php.ini to install by default by setting PHP_INI_VERSION to either
* 'production' or 'development' in /etc/make.conf
* Both versions of php.ini can be found in /usr/share/doc/php-5.3.4

すなわち、デフォルトでは「development」バージョンがインストールされる。
このバージョンでは、php を利用しているウェブアプリケーションの実行時に、エラー/警告メッセージがウェブページ上に表示される。

これを回避するには、/etc/make.conf で、「production」バージョンがインストールされるように明示的に設定すればよい。

PHP_INI_VERSION = "production"


以下は、「production」バージョンと「development」バージョンの、それぞれの /etc/php/apache2-php5.3/php.ini の差分である。

514c514< error_reporting = E_ALL & ~E_DEPRECATED

    • -

> error_reporting = E_ALL | E_STRICT
531c531< display_errors = Off

    • -

> display_errors = On
542c542< display_startup_errors = Off

    • -

> display_startup_errors = On
586c586< track_errors = Off

    • -

> track_errors = On
604c604< html_errors = Off

    • -

> html_errors = On
971a972
> ;extension=php_phar.dll
1246,1253d1246< ; Allow accessing, from PHP's perspective, local files with LOAD DATA statements< ; http://php.net/mysqli.allow_local_infile
< ;mysqli.allow_local_infile = On< < ; Allow or prevent persistent links.< ; http://php.net/mysqli.allow-persistent
< mysqli.allow_persistent = On<
1302c1295< mysqlnd.collect_memory_statistics = Off

    • -

> mysqlnd.collect_memory_statistics = On
1571c1564< session.bug_compat_42 = Off

    • -

> session.bug_compat_42 = On
1580c1573< session.bug_compat_warn = Off

    • -

> session.bug_compat_warn = On
1597a1591
> session.entropy_file =


なお、インストールは、以下のような設定を手動で行なうことで完了する。

* To switch apache2 to use php:5.3, run
* eselect php set apache2 php5.3