Chapter 4. 設定

Table of Contents
php3.ini ファイル
Apache モジュール
CGI
仮想ホスト
セキュリティ

php3.ini ファイル

php3.ini ファイルは、PHP のパーサによって起動時に 読み込まれます。PHP のサーバー版では、このファイルは、Web サーバーの 起動時にのみ一度だけ読み込まれます。 CGI 版では、起動する度にこのファイルが読み込まれます。

ここで羅列した全ての命令には、 対応する Apache の httpd.conf 命令があります。 ここで羅列した命令の名前の頭に php3_ を 付加するだけで指定できます。

一般的な設定用の命令

auto_append_file 文字列

メインファイルの後に自動的に追加されるファイルの 名前を指定します。 このファイルは、include() 関数のコール時 と同様に読み込まれます。 このため、include_path が使用されます。

none を値として 指定するとこの自動付加機能はオフとなります。

Note: スクリプトが exit() で終了する場合、 自動付加機能は、使用され ません

auto_prepend_file 文字列

メインファイルの前に自動的に付加されるファイルの名前を 指定します。 このファイルは、include() 関数のコール時 と同様に読み込まれます。 このため、include_path が使用されます。

none を値として 指定すると、ファイルを前に追加する機能はオフとなります。

cgi_ext 文字列

display_errors 論理値

HTML 出力の一部としてエラーを画面に出力するかどうかを定義します。

doc_root 文字列

サーバーにおける PHP の "ルートディレクトリ" です。 この値は空で無い場合のみ使用されます。 PHP が セーフモード で設定されている場合には、このディレクトリの外側にあるファイルは 使用されません。

engine 論理値

この命令は、Apache モジュール版のユーザーのみに有用です。 この命令は、ディレクトリ毎または仮想サーバー毎に PHP による 処理をオンまたはオフにしたいようなサイトで使用されます。 httpd.conf ファイルの適当な場所に php3_engine off などと書くことにより、 PHP は有効または無効となります。

error_log 文字列

スクリプトエラーを記録するファイルの名前。 syslog という名前が指定された場合、 エラーはシステムログの方に送られます。 UNIX においては、システムログとは syslog(3) を意味しますが、 Windows NT ではイベントログとなります。 システムログは、Windows 95 ではサポートされません。

error_reporting 整数

エラーレポートのレベルをセットします。 パラメータは、ビットフィールドを表す整数です。 望みのエラーレポートレベルの値を加えて下さい。

Table 4-1. エラーレポートレベル

ビット値有効なレポート
1通常のエラー
2通常の警告
4パーサのエラー
8クリティカルでないシステム関連の警告
この命令のデフォルト値は、7 です。(通常のエラー、通常の警告、 パーサエラーが表示されます。)

gpc_order 文字列

GET/POST/COOKIE 変数処理の順番を設定します。 この命令のデフォルトの設定は、"GPC" です。 例えば、これを "GP" に PHP はクッキーを完全に無視し、 GET メソッド変数を同名の POST メソッド変数で上書きします。

include_path 文字列

require()include()、 および fopen_with_path() 関数がファイルを 探すディレクトリのリストを指定します。 フォーマットは、システムの環境変数 PATH と 同じです。 つまり、UNIX ではコロンで、Windows ではセミコロンで区切った ディレクトリのリストで指定します。

Example 4-1. UNIX include_path

include_path=.:/home/httpd/php-lib

Example 4-2. Windows include_path

include_path=.;c:\www\phplib
この命令のデフォルト値は、. (カレントディレクトリのみ)です。

isapi_ext 文字列

log_errors 論理値

スクリプトエラーメッセージをサーバーエラーログに 記録する必要があるかどうかを指定します。 このオプションは、サーバーの種類に依存します。

magic_quotes_gpc 論理値

magic_quotes_runtime 論理値

magic_quotes_sybase 論理値

max_execution_time 整数

スクリプトがパーサにより強制終了されるまでに許容される 最大の時間を秒単位で指定します。 この命令は、いい加減に書かれたスクリプトがサーバーの負荷を 上げることを防止するのに役立ちます。

memory_limit 整数

スクリプトが確保できる最大メモリをバイト数で指定します。 この命令は、いい加減に書かれたスクリプトがサーバーのメモリを 食いつぶすことを防止するのに役立ちます。

nsapi_ext 文字列

short_open_tag 論理値

PHP タグの短縮型 (<? ?> を使用可能に するかどうかを設定します。 PHP を XML と組み合わせて用いる場合は、このオプションを オフにする必要があります。 これをオフにした場合、長い方の形式のタグ (<?php ?>) を使用する必要 があります。

sql.safe_mode 論理値

track_errors 論理値

このオプションを有効にした場合、最新のエラーメッセージを 常にグローバル変数 $php_errormsg で参照することができます。

track_vars 論理値

このオプションを有効にした場合、GET、POST、クッキー入力は、 グローバル連想配列 $HTTP_GET_VARS$HTTP_POST_VARS$HTTP_COOKIE_VARS でそれぞれ参照することができます。

upload_tmp_dir 文字列

ファイルアップロード時にファイル保存に用いるテンポラリディレクトリ。 PHP の実行ユーザーが書きこみ可能である必要があります。

user_dir 文字列

PHP ファイルがユーザーのホームディレクトリとして使用する ディレクトリの名前。 例えば、public_html となります。

warn_plus_overloading 論理値

このオプションが有効の場合、 PHP は、文字列中に (+) 演算子が使用されている 場合に警告を出力します。 これは、文字列結合演算子 (.) を替わりに用いて 書きなおす必要があるスクリプトを発見しやすくするためのものです。

メール設定用命令

SMTP 文字列

Windows 版の PHP が mail() 関数による メールの送信に使用する SMTP サーバーの DNS 名または IP アドレス。

sendmail_from 文字列

Windows 版の PHP から送信するメールにおいて "From:" に使用するメールアドレス。

sendmail_path 文字列

sendmail プログラムがある場所。 通常は、 /usr/sbin/sendmail または、 /usr/lib/sendmail です。 configure が sendmail の場所を 探してくれますが、失敗する場合は、ここでそのパスをセットことが 可能です。

sendmail を使用していないシステムは、替わりに動作させるマシンの メールシステムが 提供する sendmail のラッパーまたは代替品をこの命令に指定する 必要があります。 例えば、 Qmail ユーザーは、 通常、この命令に /var/qmail/bin/sendmail をセットすることができます。

セーフモード設定用命令

safe_mode 論理値

PHP のセーフモードを有効にするかどうかを指定します。

safe_mode_exec_dir 文字列

PHP がセーフモードで動作している場合、システムプログラムを 実行する system() および他の関数 は、このディレクトリにないプログラムの実行を拒否します。

デバッガー設定用命令

debugger.host 文字列

デバッガーにより使用されるホストの DNS 名または IP アドレス。

debugger.port 文字列

デバッガにより使用されるポート番号。

debugger.enabled 論理値

デバッガが有効かどうかを設定します。

拡張ロード命令

extension_dir 文字列

動的にロード可能な拡張モジュールを置くディレクトリを 指定します。

extension 文字列

PHP の起動時にロードされる動的にロード可能な拡張モジュールを 指定します、

MySQL 設定用命令

mysql.allow_persistent 論理値

継続的な MySQL 接続を許可するかどうかを指定します。

mysql.max_persistent 整数

継続的な MySQL 接続のプロセス毎の最大数。

mysql.max_links 整数

継続的な接続を含む MySQL 接続のプロセス毎の最大数。

mSQL 設定用命令

msql.allow_persistent 論理値

継続的な mSQL 接続を許可するかどうかを指定します。

msql.max_persistent 整数

継続的な mSQL 接続のプロセス毎の最大数。

msql.max_links 整数

継続的な接続を含む mSQL 接続のプロセス毎の最大数。

Postgres 設定用命令

pgsql.allow_persistent 論理値

継続的な Postgres 接続を許可するかどうかを指定します。

pgsql.max_persistent 整数

継続的な Postgres 接続のプロセス毎の最大数。

pgsql.max_links 整数

継続的な接続を含む Postgres 接続のプロセス毎の最大数。

Sybase 設定用命令

sybase.allow_persistent 論理値

継続的な Sybase 接続を許可するかどうかを指定します。

sybase.max_persistent 整数

継続的な Sybase 接続のプロセス毎の最大数。

sybase.max_links 整数

継続的な接続を含む Sybase 接続のプロセス毎の最大数。

Sybase-CT 設定用命令

sybct.allow_persistent 論理値

継続的な Sybase-CT 接続を許可するかどうかを指定します。

sybct.max_persistent 整数

継続的な Sybase-CT 接続のプロセス毎の最大数。

sybct.max_links 整数

継続的な接続を含む Sybase-CT 接続のプロセス毎の最大数。

BC Math 設定用命令

bcmath.scale 整数

全ての bcmath 関数で使用する 10 進桁数。

ブラウザ機能設定用命令

browscap 文字列

ブラウザ機能ファイルの名前。

Unified ODBC 設定用命令

uodbc.default_db 文字列

odbc_connect() または odbc_pconnect() のどちらも指定されていない 場合に使用するODBC データソース。

uodbc.default_user 文字列

odbc_connect() または odbc_pconnect() のどちらも指定されていない 場合に使用するユーザ名。

uodbc.default_pw 文字列

odbc_connect() または odbc_pconnect() のどちらも指定されていない 場合に使用するパスワード。

uodbc.allow_persistent 論理値

継続的な ODBC 接続を許可するかどうか指定します。

uodbc.max_persistent integer

継続的な ODBC 接続のプロセス毎の最大数。

uodbc.max_links integer

継続的な接続を含む ODBC 接続のプロセス毎の最大数。