【PHP】 php.ini 設定オプション一覧

アイキャッチ画像phpini PHP
PHP
この記事は約30分で読めます。
Recommended Articles

【PHP】 php.ini 設定オプション一覧

php.ini

php.ini はPHPの動作を指定するための設定ファイルです。設定を記述する要素(ディレクティブ)に値を設定することで、どのように動作させるかを柔軟に設定することができます。設定変更後は、Webサーバーの再起動が必要です。

php.ini の場所の確認

php.ini の場所は、phpinfoを見ることで確認できます。

  • phpinfoをwebで見る
    ドキュメントルート配下に「echo phpinfo();」を記載し、ブラウザで確認
  • コンソール上で実行して確認
    php -r "phpinfo();" | grep "php.ini"

スクリプトがうまく動作しない場合にも設定を確認してみましょう。使いたいエクステンションが phpinfo 関数の実行結果に表示されない場合、エクステンションがインストールされていないことがわかります。また変更したはずの設定が反映されていない場合、phpinfo の出力で「Configuration File (pho.ini) Path」を確認します。PHPをいくつもインストールしてしまったような場合、読み込まれていない php.ini を間違えて編集しているのかもしれません。

Webサービスを動かしている場合、Apacheに設定した場所と、コンソールで見たときの場所が異なる場合があります。実際にはwebサービスで動いているPHPは、Apacheで見たときのphp.iniを読み込んでいますので注意が必要です。

php.ini に設定を記述する

php.ini の各設定項目は設定方法がいくつかありますが、言うまでもなくphp.ini にダイレクトに記述する方法が最も簡単です。php.ini を開くと多くの項目に既に値が設定されており、コメントして設定例が記述されている項目もあるので、基本的な記述方法は、そちらが参考になると思います。

  • php.iniの設定例
    mbstring.internal_encodeing = EUC-jp

phpの設定を .htaccess に記述するには

Apacheの動作設定を記述できる .htaccess に、PHPの動作設定を記述しておくと、Apacheを再起動しなくても、スクリプトの実行時に反映されます。この場合、php_value というディレクティブに値(パスなどを記述)を指定、php_flag にフラグ(On/Offを記述)を指定します。php.ini 自体を直接編集できない場合にも役立ちます。

  • phpの設定を .htaccess に記述する例
    php_value include_path ".;c:\file\library"
    php_flag display_errors Off

phpの設定をスクリプトから行うには

PHPの組み込み関数には、設定値を動的に変更できるものがあります。例えばその名前通りの機能の ini_set 関数や、出力するエラーレベルを設定する error_reporting 関数です。こうした関数を使って設定を変更した場合、該当スクリプトの処理でのみ設定が適用されます。

  • ini_set 関数でPHPの設定を追加する例
    ini_set("SMTP", "mail1, xxx.com");
  • エラーレベルを設定する error_reporting 関数
    error_reporting(0);

変数

always_populate_raw_post_data   既定値:On

解説:変数 $HTTP_RAW_POST_DATAにアクセス可能にする

arg_separator.input   既定値:&

解説:URL解析時の各パラメータ区切り文字

arg_separator.output   既定値:&

解説:URL生成時の各パラメータ区切り文字

  • http_build_query関数などで、URLを組み立てるときに、要素の区切り文字として使われます。規定値は「&」ですが、「&」のほうが都合が良い場合もあります。XAMPPでは規定値が「&」に設定されているので「&」のほうが都合が良い場合は変更します。
auto_globals_jit   規定値:1

解説:サーバー変数や環境変数を、スクリプト開始時でなく使用時に作成する(PHP5.0以降で利用可能)

filter.default   既定値:unsage_raw

解説:規定のフィルタ名(PHP5.2以降で使用可能)

filter.default_flags   既定値:Null

解説:フィルタで使う規定のフラグ(PHP5.2以降で使用可能)

magic_quotes_gpc   規定値:Off

解説:クライアントより<form>フォームで送られた文字列データが全てエスケープされ、 「" → ¥"」「¥ → ¥¥」など変換処理が行われます。

  • Onを設定するとGPC(Get、Post、Cookie)に含まれる値がバックスラッシュでエスケープされます。PHP6で廃止される項目なので、基本的にはOffで良いでしょう。ただし、php.iniの2つのテンプレートファイル(php.ini-recommended/php.ini-dist)で規定値が異なり、サーバーによってOnとOffが混在していることが考えられます。よって設定値に依存せずに動作するget_magic_quotes_gpc関数が役立ちます。
magic_quotes_runtime   既定値:Off

解説:外部から取得した値をバックスラッシュでエスケープする

  • Onの場合はデータベースやファイルから取得した値がバックスラッシュでエスケープされます。PHP6で廃止されます。
magic_quotes_sybase   既定値:Off

解説:シングルクォーテーションでエスケープする

  • この設定は、magic_quotes_gpcやmagic_quotes_runtimeの設定を上書きするのでバックスラッシュでエスケープされなくなります。また、PHP 5.3.0 で非推奨、PHP 5.4.0 で廃止されます。
post_max_size   既定値:8M

解説:許可される POST送信データの最大サイズ

  • upload_max_filesize とともにデフォルト値のまま使うのであれば問題ありません。
    ただし、10M のファイルをアップロードする時
    upload_max_filesize : 10M
    post_max_size :8M(デフォルト)
    この設定の場合、post_max_size 制限によりアップロード不可となります。
    post_max_size の値は、upload_max_filesize より少し大きめの値を指定しておくと良いでしょう。
precision   規定値:14

解説:浮動小数点数の最大桁数

register_argc_argv   既定値:Off

解説:変数$argcと変数$argvを宣言する

  • 変数$argcにはスクリプトに渡されるパラメータの数、変数$argvにはパラメータの値がセットされています。コマンドラインからPHPを実行するときにスクリプトに渡すパラメータとして使われますので、バッチのようなコマンドラインプログラムを書く場合はOnにすることを推奨します。
register_long_globals   既定値:Off

解説:変数をグローバル変数に登録する

  • セキュリティの視点からPHP4.2以降、既定値がOffとなりスーパーグローバル変数の使用が推奨されています。PHP6で廃止されるため、デフォルトのままで良いでしょう。
register_long_arrays   既定値:Off(php.ini-dist は On)

解説:変数$HTTP_*_VARSを登録する

  • PHP5で追加されたディレクティブです。スーパーグローバル変数が採用される前によく使われていた変数$HTTP_*_VARSを定義済の変数として登録するかを指定します。php.ini-recommendedの規定値はOffです。つまり、既存のシステムで変数$HTTP_*_VARSを使っている場合は動作しなくなる可能性がありますので、注意が必要です。PHP6では、この設定は廃止されます。
variables_order   既定値:GPCS

解説:変数の優先順位

  • EGPCS(Environment、GET、POST、Cookie、Server)各変数を扱うときの優先順位を指定します。左の変数から順に登録され、新たな変数は従来の値を上書きします。PHP5では、gpc_orderディレクティブがなくなり、かわりにこのvariables_orderを使います。

日付

date.default_latitude   既定値:31.7667

解説:既定の緯度を設定する

date.default_longitude   既定値:35.2333

解説:既定の経度を設定する

date.sunrise_zenith   既定値:90.583333

解説:既定の日の出点を設定する

date.sunset_zenith   既定値:90.583333

解説:既定の日没点を設定する

  • ここまで4つの日付設定項目は日の出時刻と日の入り時刻を取得するためのdate_sunrise関数とdate_sunset関数で使われます。
date.timezone   既定値:空

解説:日付時刻関数で使われる既定のタイムゾーン

  • タイムゾーンはdate_default_timezone_set関数で設定することもできます。または環境変数TZから取得できれば、そちらを利用することもできます。こうした仕組みを利用しない場合、date.timezoneを設定する必要があります。たとえば「date.timezone = Asia/Tokyo」とします。タイムゾーンが設定されない場合、PHP5.1以降で日付時刻関数を使うとE_STRICTエラー(PHP5の既定のエラーレベルでは出力されない)が発生します。

マルチバイト

いまさら聞けない!マルチバイトとは...

いわゆる2バイト文字のことで、コンピュータで文字を扱えるよう各文字に番号を対応付ける文字コードや文字セットのうち、1文字を2バイト以上のデータ量で表すものです。

mbstring.*ディレクティブで文字コードを指定する場合は、次のように単一の文字コード、複数の文字コード、または「auto」「pass」を指定できます。

  • 単一の文字コード:入出力、内部文字コードを指定(例:SJIS)
  • 複数の文字コード:文字コードの検出順を指定
  • pass:文字コード変換が行われない
  • auto:ASCII、JIS、UTF-8、EUC-JP、SJISと同じ意味
mbstring.detect_order   既定値:NULL

解説:文字コードの検出順(「SJIS、EUC-JP」を指定します。)

mbstring.encoding_translation   既定値:Off

解説:内部文字エンコーディングへの変換を有効にする

mbstring.func_overload   既定値:0

いまさら聞けない!オーバーロードとは...
関数の多重定義のこと。引数や戻り値が異なるが名称が同一のメソッドを複数定義するというオブジェクト指向プログラミングのテクニックである。

解説:マルチバイト関数のオーバーロード設定

関数オーバーロードする関数
1mailmb_send_mail1
2strlenmb_strlen
2strposmb_strpos
2strrposmb_strrpos
2substrmb_substr
4eregmb_ereg
4ereg1mb_ereg1
4ereg_replacemb_ereg_replace
4ereg1_replacemb_ereg1_replace
4splitmb_split
次の値の和を指定します。たとえば、1を設定するとmail関数をmb_send_mail関すがオーバーロードし、7を指定すると上表のすべての関数がオーバーロード対象になります。
mbstring.http_input   既定値:pass

解説:HTTP入力文字エンコーディング

mbstring.http_output   既定値:pass

解説:HTTP出力文字エンコーディング

mbstring.internal_encoding   既定値:null

解説:内部文字エンコーディング

  • マルチバイト関数で使われる既定の文字コードを指定します。mb_internal_encoding関数で設定することもできます。マルチバイト関数の設定項目はいくつもあるので設定が面倒ですが、この項目は設定しておいたほうが良いでしょう。
mbstring.language   既定値:neutral

解説:mb_send_mail関数で使う言語

  • 指定された言語に基づいてmb_send_mail関数からメールが送信されます。日本語のメールを送信する場合は「Japanese」に設定します。マルチバイト関数全般で使われる言語のことではないので、注意しましょう。
mbstring.strict_detection   既定値:空

解説:綿密な文字コード検出を行う

mbstring.substitude_character   既定値:NULL

解説:代替文字の既定値

ファイル

allow_url_fopen   既定値:On

解説:開くファイルとしてURLを指定可能にする

allow_url_include   既定値:Off

解説:インクルードファイルとしてURLを指定可能にする

  • URLを指定してファイルを開くことを可能にしても、インクルードファイルにはURLの指定を無効にしたい場合に、allow_url_fopenと組み合わせて使うことができます。
auto_append_file   既定値:空文字

解説:実行中のファイルの後に付加されるファイル

auto_detect_line_endings   既定値:Off

解説:行末を自動検出する

  • Onの場合はファイルから取得したデータについて、UNIX、MS-DOS、machintoshの行末文字を使用してないか調べます。
auto_prepend_file   既定値:空文字

解説:実行中のファイルの前に付加されるファイル

enable_dl   既定値:On

解説:拡張モジュールのロードを許可する

extension   既定値:設定なし

解説:ロードする拡張モジュール

  • ロードするモジュール(例:「WIN:php_mysql.dll」「UNIX:php_mysql.so」)を指定します。スクリプトで使用するモジュールがロードされていないと「Call to underfined function」というエラーメッセージが表示されます。その場合は、extensionディレクティブやコンパイルオプションを確認しましょう。PHP5では「;extension=php_mysql.dll」と、MySQLモジュールがコメントになっていることに気をつけましょう。デフォルトではMySQLが使えないということになります。
extension_dir   既定値:PHP_EXTENSION_DIR

解説:拡張モジュールの格納ディレクトリ

file_upload   既定値:On

解説:ファイルアップロードの許可

highlight.bg   既定値:HL_BG_COLOR

解説:コードハイライト表示時の背景色

highlight.comment   既定値:HL_COMMENT_COLOR

解説:コードハイライト表示時のコメント色

highlight.default   既定値:HL_DEFAULT_COLOR

解説:コードハイライト表示時の規定の色

highlight.html   既定値:HL_HTML_COLOR

解説:コードハイライト表示時のHTMLの色

highlight.keyword   既定値:HL_KEYWORD_COLOR

解説:コードハイライト表示時のキーワードの色

highlight.string   既定値:HL_STRING_COLOR

解説:コードハイライト表示時の文字列の色

include_path   既定値:PHP_INCLUDE_PATH

解説:インクルードファイルの格納ディレクトリ

  • 複数のディレクトリを指定する場合は、Windowsはセミコロン、UNIXはコロンでくびって指定します。PEARやSamrtyが使えないという場合、これらのライブラリが格納されたディレクトリが、include_pathに含まれていないことが考えられます。
open_basedir   既定値:NULL

解説:開くことができるファイルの配置ディレクトリ

  • fopen関数などで操作が可能なフィルを配置するディレクトリを指定します。複数ディレクトリを指定する場合は、Windows上では、ディレクトリをセミコロンで、他のシステムではコロンで区切ります。
realpath_cashe_size   既定値:16K

解説:realpathキャッシュのサイズ

realpath_cache_ttl   既定値:120

解説:realpathキャッシュの有効時間(秒)

upload_max_filesize   既定値:2M

解説:アップロードするファイルの最大サイズ

upload_tmp_dir   既定値:NULL

解説:ファイルアップロード時に使用するテンポラリディレクトリ

  • アップロードされたファイルを保存できるように、書き込み可能なディレクトリを指定します。設定されていない場合はシステムで設定されたディレクトリを使用します。

データベース

mysql.allow_persistent   既定値:On

解説:持続的MySQL接続を許可する

mysql.connect_timeout   既定値:60

解説:MySQL接続のタイムアウト値(秒)

mysql.default_host   既定値:null

解説:MySQL接続の既定のMySQLサーバー

mysql.default_password   既定値:null

解説:MySQL接続の既定のパスワード

mysql.default_port   既定値:null

解説:MySQL接続の既定のポート

mysql.default_socket   既定値:null

解説:MySQL接続の既定のソケット名

mysql.default_user   既定値:null

解説:MySQL接続の既定のユーザー名

mysql.max_links   既定値:-1

解説:持続的接続を含むMySQL接続の最大数(-1:無制限)

mysql.max_persistent   既定値:-1

解説:持続的接続MySQL接続の最大数(-1:無制限)

mysql.trace_mode   既定値:Off

解説:トレースモードで実行する

mysqli.default_host   既定値:null

解説:MySQLi接続の既定のMySQLサーバー

mysqli.default_pw   既定値:null

解説:MySQLi接続の既定のパスワード

mysqli.default_port   既定値:3306

解説:MySQLi接続の既定のポート

mysqli.default_socket   既定値:null

解説:MySQLi接続の既定のソケット名

mysqli.default_user   既定値:null

解説:MySQLi接続の既定のユーザー名

mysqli.max_links   既定値:-1

解説:MySQLiの最大接続数(-1:無制限)

mysqli.reconnect   既定値:Off

解説:MySQLiの再接続を許可する

  • mysqli.* ディレクティブはPHP5で追加されました。
odbc.allow_persistent   既定値:On

解説:持続的ODBC接続を許可する

odbc.check_persistent   既定値:On

解説:接続を再利用する前に、有効な接続か調べる

odbc.default_db   既定値:null

解説:既定のデータベース

  • ODBCデータソースが指定されない場合に使用する既定のデータベースを指定します。
odbc.default_pw   既定値:null

解説:既定のパスワード

odbc.default_user   既定値:null

解説:既定のユーザー名

odbc.defaultbinmode   既定値:1

解説:データ変換モード(0:バイナリデータに変換、1:そのまま、2:charに変換)

odbc.defaultlrl   既定値:4096

解説:LONGフィールドの戻り値のサイズ(バイト数)

odbc.max_links   既定値:-1

解説:持続的接続を含むODBC接続の最大数(-1:無制限)

odbc.max_persistent   既定値:-1

解説:持続的ODBC接続の最大数(-1:無制限)

pgsql.allow_persistent   既定値:On

解説:持続的PostgreSQL接続を許可する

pgsql.uato_reset_persistent   既定値:Off

解説:持続的PostgreSQL接続を自動的にリセットする

pgsql.ignore_notice   既定値:0

解説:PostgreSQLからのメッセージを無視する

pgsql.log_notice   既定値:0

解説:PostgreSQLからのメッセージをログに記録する

pgsql.max_links   既定値:-1

解説:持続的接続を含むPostgreSQL接続の最大数を指定します。(-1:無制限)

pgsql.max_persistent   既定値:-1

解説:持続的PostgreSQL接続の最大数を指定します。(-1:無制限)

sql.safe_mode   既定値:Off

解説:データ処理時にセーフモードを適用する

sqlite.assoc_case   既定値:0

解説:フィールド名の大文字と小文字の使用状況(0:混在、1:大文字を使用、2:小文字を使用)

実行制御

asp_tags   既定値:Off

解説:ASPスタイルの開始文字を許可する

  • Onの場合は、ASPスタイルの<% ... %> 形式のタグが有効となります。
disable_classes   既定値:空文字

解説:無効にするクラス

disable_functions   既定値:空文字

解説:無効にする関数(複数指定するときはカンマで区切ります。例:「exec,passthru」)

doc_root   既定値:null

解説:PHPのルートディレクトリ

docref_ext   既定値:空文字

解説:ドキュメントページの拡張子を指定します。(例:.html)

docref_root   既定値:空文字

解説:ドキュメントページが配置されているディレクトリ(例:/manual/ja/)

engine   既定値:On

解説:ApacheでPHPの実行を許可する

expose_php   既定値:On

解説:PHPがインストール済であることをWebサーバーに伝える

  • Onの場合、WebサーバーのシグニチャにPHPのインストール情報が付加され、HTTPヘッダなどに「PHP5.2.5」のような値が出力されます。こうした情報はハッカーに役立つ情報となってしまうので、この項目は運用時はOffにしたほうが良いでしょう。またOnの場合、任意のPHPスクリプトに特定のパラメータを付加することで、PHPのクレジットなどを出力させることもできます。
implicit_frush   既定値:Off

解説:Onを設定するとechoなどでデータが出力されるたびに自動でフラッシュされる

ignore_user_abort   既定値:On

解説:リクエストが中止されても処理を継続する

max_execution_time   既定値:30

解説:スクリプトのタイムアウト値

  • スクリプトが強制終了されるまでの最大時間を秒単位で設定します。入門時に作成するプログラムでは時間がかかる処理はほとんどありません。コードを記述しながら学習している過程で、無限ループの不安がある場合は、数秒程度に制限しても良いでしょう。
max_input_time   既定値:60

解説:フォームから送信されたデータを受け取るまでの最大許容時間(秒)

memory_limit   既定値:128M

解説:スクリプトが使用できる最大メモリサイズ

output_buffering   既定値:4096 (php.ini-dist は Off)

解説:OnまたはOffによって出力バッファリングの有効/無効を指定可能です。数値を指定するとバッファの最大バイト数になります。

output_handler   既定値:NULL

解説:出力をハンドリングする関数名

  • 例:「mb_output_handler」を指定すると出力データがマルチバイト文字列の設定によって変換されます。
report_memleaks   既定値:On

解説:ログにメモリリークを出力する

safe_mode   既定値:Off

解説:セーフモードで実行する(PHP6で廃止)

safe_mode_allowed_env_vars   既定値:PHP_

解説:設定可能な環境変数の接頭辞

  • 指定した接頭辞以外の環境変数を変更することはできません。接頭辞はカンマで区切って複数指定することができます。
safe_mode_exec_dir   既定値:空文字

解説:コマンド実行ディレクトリ

  • セーフモード実行時は、指定したディレクトリ以外ではシステムコマンドを実行するプログラム実行関数を利用できません。
safe_mode_gid   既定値:Off

解説:開くGIDをチェックする場合はOn、UIDチェックの場合はOffを指定します。

safe_mode_include_dir   既定値:NULL

解説:UIDやGIDのチェックを省略するディレクトリ

  • セーフモード実行時に、指定したディレクトリ配下のファイルをインクルードする場合はUIDやGIDのチェックが省略されます。
safe_mode_protected_env_vars   既定値:LD_LIBBARY_PATH

解説:設定不可能な環境変数

  • 変更されるのを防ぎたい環境変数を指定します。カンマで区切って複数設定することができます。
short_open_tag   既定値:Off (php.ini-dist はOn)

解説:開始/終了タグの短縮形を有効にする

  • Onの場合は<?= $temp ?>形式のタグが有効になりますが、XML宣言の <?xml がPHPスクリプトの開始と間違われるのでこれは推奨されていません。Offという前提で作業しましょう。ただしphp.ini-distや古いバージョンではOnであったことより、設定値が混在していることがあるので注意が必要です。
user_agent   既定値:NULL

解説:PHP用のユーザーエージェント

user_dir   既定値:NULL

解説:ユーザー用のホームディレクトリ

y2k_compliance   既定値:On

解説:2000年問題対応を強制する

zend.ze1_compatibility_mode   既定値:Off

解説:PHP4互換モードで動作させる

  • 有効にすると、オブジェクトの代入がPHP5のように「参照渡し」だけでなく、PHP4の「値渡し」となるなど、オブジェクト関連がPHP4の仕様で動作します。

エラー処理

display_errors   既定値:Off (php.ini-dist は On)

解説:エラーを画面に表示する

  • Onの場合はエラーメッセージが画面に表示されます。既定値は開発マシンで適用するphp.ini-distはOn、セキュリティ面を考慮したphp.ini-recommendedではOffとなります。これは実際の運用時には詳細エラーメッセージを画面に出力する必要がないことを示唆しています。
display_startup_errors   既定値:Off

解説:PHP起動時のエラーを出力するか

error_append_string   既定値:NILL

解説:エラーメッセージの後に出力する文字列

error_log   既定値:NULL

解説:エラーを記録するファイル名やsyslogを指定します。

error_prepend_string   既定値:NULL

解説:エラーメッセージの前に出力する文字列(例:<font color=red>)

error_reporting   既定値:E_ALL  ( php.ini-distは E_ALL & -E_NOTICE)

解説:エラーの出力レベル

  • どのレベルのエラーまでを出力するかを設定します。php.ini-distの既定値では、NOTICE以外のエラーが出力されます。つまり、開発時は、NOTICEに設定されているサーバーのためエラーに気づかず、リリース時はE_ALLのサーバーで動作するため「急に大量のメッセージが表示された」ということになるかもかもしれません。詳しくはerror_reporting関数●をご覧ください。
gd.jpeg_ignore_warning   既定値:0

解説:GDのJPEG関連の関数が出力するエラーメッセージを無視する

html_errors   既定値:On

解説:エラーメッセージのHTMLタグを出力する

  • エラーメッセージにHTMLタグを含めて、関連のある関数にリンクするといった使い方をする場合はOnに指定します。
ignore_repeated_errors   既定値:Off

解説:繰り返されるエラーメッセージを記録する

ignore_repeated_source   既定値:Off

解説:同じソースのメッセージを無視する

log_errors   既定値:On ( php.ini-dist は Off )

解説:エラーログに記録する

log_errors_max_len   既定値:1024

解説:エラーメッセージの最大サイズ(キロバイト単位で指定、0指定で無制限)

track_errors   既定値:Off

解説:変数 $php_errormsg に直近のエラーメッセージを格納する

セッション

コンピューターネットワークにおけるセッションとは、通信の開始から終了までを指します。クライアントとサーバーで通信を行う場合であれば、クライアントからサーバーへ接続した時点でセッションが始まり、サーバーから切断するとセッションが終了します。この一連の流れを管理することをセッション管理と言います。

 

session.auto_start   既定値:0

解説:セッションを自動開始する

  • 1を指定するとsession_start関数を実行しなくともスクリプト実行時にセッションが自動で開始されます。常に自動で開始するのは無駄が多いため、無効のままとします。
session.bug_compat_42   既定値:0 ( php.ini-dist は1 )

解説:セッション処理のバグを許容する

session.bug_compat_warm   既定値:1

解説:セッション処理のバグ許容にメッセージを出力する

session.cashe_limiter   既定値:nocache

解説:セッションのキャッシュ制御方法

session.cookie_domain   既定値:空

解説:クッキーで指定するドメイン

いまさら聞けない!クッキーとは...
WebサイトがスマホやPCの中に保存する情報のことで、保存されることによって同じWebサーバーにアクセスすれば、ユーザーに続きのページを表示するという機能です。

session.cookie_httponly   既定値:空

解説:クッキーに対してHTTP経由のみでアクセスできるようにする

session.cookie_lifetime   既定値:0

解説:クッキーの有効期間(秒単位で指定、0指定でブラウザを閉じるまで有効)

session.cookie_path   既定値:「/」

解説:クッキーで指定するパス

session.cookie_secure   既定値:空文字

解説:セキュア接続でのみクッキーを送信可能にする

session.entorpy_file   既定値:空文字

解説:セッションID生成に使用する外部リソースのパス

session.entorpy_length   既定値:0

解説:セッションID生成時に外部リソースから読み込むバイト数

session.gc_divisor   既定値:1000 ( php.ini-dist は 100 )

解説:PHPでセッションの長さを変更するための設定です。

  • session.gc_divisorと session.gc_probabilityの組み合わせで すべてのセッションの初期化過程でgc(ガベージコレクション)プロセス も始動する確率を制御します。確率は gc_probability/gc_divisor で計算されます。
session.gc_maxlifetime   既定値:1440

解説:ガベージコレクション実行までの時間(秒)

session.gc_probability   既定値:1

解説:PHPでセッションの長さを変更するための設定です。(詳細は session.gc_divisor を参照)

session.hash_bits_per_character   既定値:5 ( php.ini-dist は 4 )

解説:ハッシュ変換時に各文字に保存するビット数(PHP5で追加されたディレクティブ)

session.hash_function   既定値:0

解説:セッションIDの生成アルゴリズム(0指定でMD5:128ビット、1指定でSHA-1:160ビット)

session.name   既定値:PHPSESSID

解説:セッションIDを保存するときの要素名として使われます。

session.referer_check   既定値:空文字

解説:遷移元チェックに使用する文字列

session.save_handler   既定値:files

解説:セッション保存先のハンドル名

session.save_path   既定値:/tmp

解説:セッション保存先のディレクトリ

  • ファイルにセッションデータを保存する場合は、セッション保存先のディレクトリを設定しないと、データの保存ができません。
session.serialize_handler   既定値:php

解説:シリアライズするときのハンドル名

session.use_cookies   既定値:1

解説:セッションIDの保存先を指定

  • 1指定でクッキーに保存、0指定でURLに保存。セッションIDはできるだけURLに含めないほうが安全です
session.use_only_cookies   既定値:0

解説:セッションIDにクッキーのみを使う(1指定でセッションIDをURLに含めるなど、クッキー以外のセッションIDが使用できません。)

session.use_trans_sid   既定値:0

解説:セッションIDをURLに付加する(1を指定してセッションIDがクッキーを使用しない場合には、セッションIDがURLに付加されます。)

url_rewriter.tags   既定値:a=href,area=href,frame=src,input=src,form=fakeentry

解説:URLにセッションIDを含めるときの対象タグ

ネットワーク

default_charset   既定値:設定なし

解説:規定の文字コード

  • 必須項目ではありません。.htaccessでディレクトリごとに異なる文字コードを設定するなど、他の方法で文字コードを設定する方法も知っておいたほうが便利です。
default_mimetype   既定値:text/thml

解説:規定のMIMEタイプ

default_socket_timeout   既定値:60

解説:ソケット接続のタイムアウト値(秒)

define_syslog_variables   既定値:Off

解説:syslog変数を定義する

from   既定値:NULL

解説:anonymous FTPにログインするためのパスワードとして使用するためのメールアドレスを指定

mail.force_extra_paramaters   既定値:NULL

解説:メール送信時に追加するパラメータ

sendmail_from   既定値:NULL

解説:メール送信元のメールアドレスを指定します(Windowsのみ)

sendmail_path   既定値:DEFAULT_SENDMAIL_PATH

解説:sendmail1のパスを指定します(UNIXのみ)

SMTP   既定値:localhost

解説:メール送信に使うSMTPサーバー名またはIPアドレスを指定します(Windowsのみ)

smtp_port   既定値:25

解説:SMTPサーバーのポート番号を指定します(Windowsのみ)

soap.wsdl_cashe_dir   既定値:/tmp

解説:キャッシュの格納ディレクトリ

WSDL( Web Services Description Language)とは、
インタフェース定義の言語仕様のひとつで、開発したプログラムにアクセスするためのインタフェース定義を記述できる言語。

soap.wsdl_cashe_enabled   既定値:1

解説:WSDLキャッシュを有効にする

soap.wsdl_cashe_ttl   既定値:86400

解説:WSDLキャッシュの有効期限(秒)

sokets.use_system_read   既定値:On

解説:php_readラッパーの代わりにread関数を使う

Recommended Articles