優れたソフトウェアと実用的なチュートリアル
;;;;;;;;;;;;;;;;;;
;; について php.ini ;;
;;;;;;;;;;;;;;;;;;
; サーバーモジュールの場合、php.ini はサーバーの起動時に一度だけ読み込まれます。CGI および CLI の場合、php.ini は呼び出しごとに読み込まれます。
; PHP は初期化中に次の順序でこのファイルを検索します (見つかったら停止します)。
; 1. SAPIモジュールによって指定された場所:
; (a) Apache 2.xのPHPIniDirディレクティブ
; (b) CGI/CLIモードの-cコマンドラインオプション
; (c) NSAPIのphp_iniパラメータ
; (d) THTTPDのPHP_INI_PATH環境変数
; 2. PHPRC環境変数で指定された場所
; 3. Windows レジストリで指定された場所 (順番に検索し、見つかったら停止します):
; (a) [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\xyz] の IniFilePath の値 (php-xyz バージョンに固有)
; (b) [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\xy] の IniFilePath の値 (php-xy* シリーズバージョンに固有)
; (c) [HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x] の IniFilePath の値 (php-x.*.* シリーズバージョンに固有)
; (d) [HKEY_LOCAL_MACHINE\SOFTWARE\PHP] の IniFilePath の値 (PHP のバージョンに依存しません)
; 4. 現在の作業ディレクトリ(CLIモードには適用されません)
; [ヒント] Apache は起動時に現在の作業ディレクトリをルート ディレクトリに変更します。これにより、PHP はルート ディレクトリの php.ini を読み取ろうとします。
; 5. Webサーバディレクトリ(SAPIモジュールの場合)またはPHPが配置されているディレクトリ(Windowsの場合)
; 6. コンパイル時オプション --with-config-file-path で指定された場所または Windows ディレクトリ (%SystemRoot% は通常 "C:\Windows")
; php-SAPI.ini が存在する場合 (php-apache2handler.ini、php-fpm-fcgi.ini、php-cli-server.ini、php-cli.ini など)、
; php.ini は php-SAPI.ini に置き換えられます。
; 最新バージョン:
; php.ini-production
; php.ini-開発
;;;;;;;;;;;;
;; 文法;;
;;;;;;;;;;;;
; このファイルの構文は非常にシンプルです。空行とセミコロンで始まる行は無視されます。
; 通常の設定セクションのヘッダー (例: [PHP]) も単に無視されます (将来的に何らかの意味を持つ可能性はありますが)。
; [PATH=/www/mysite] のような構成セグメントは、/www/mysite ディレクトリ内の PHP ファイルにのみ適用されることを意味します。
; [HOST=www.example.com]のような設定セクションは、 http://www.example.com サイトの PHP ファイル。
; [ヒント] 複数のドメイン名を持つサイトの場合は、SERVER_NAME パラメータの値 (つまり、ドメイン名リストの最初のドメイン名) を使用する必要があります。
; これら 2 つの構成セクションの設定は実行時に変更できず、.user.ini ファイルの影響を受けません。
; これら 2 つの設定セクションは CGI/FastCGI モード [FastCGI プロトコル仕様 中国語版] でのみ機能し、拡張機能や zend_extension 命令を含めることはできません。
; 設定命令の形式は次のとおりです。
; コマンド = 値
; 「ディレクティブ」は大文字と小文字が区別されます。したがって、「foo=bar」は「FOO=bar」と同じではありません。
; 認識されない「コマンド」はそのまま無視され、設定されていないコマンドはデフォルト値を使用します。
; 「値」は次のようになります:
; 1. 文字列(引用符で区切ることができます。例:"foo")
; 2. 数値(整数または浮動小数点数、例:0、1、34、-1、33.55)
; 3. PHP定数(例:E_ALL、M_PI)(php.ini(例:httpd.conf)の外部では使用できません)
; 4. INI定数(オン、オフ、はい、いいえ、なし)
; 5. 式(例:E_ALL & ~E_NOTICE)
; [注 1] 「value」では環境変数を参照できます。例: 「${AUTHOR}.log」、「.:${USER}/pear/php」
; [注 2] 「value」で以前に設定したディレクティブ値を参照することができます。例: 「${open_basedir}:/new/dir」
; 式ではビット演算子、論理否定、括弧のみ使用できます。
; | ビット論理和
; ^ ビット排他的論理和 (XOR)
; & ビットAND
; ~ ビット単位の否定
; ! 論理否定
ブールフラグは、1、オン、True、Yes でオンになり、0、オフ、False、No でオフになります。
; 空の文字列は、等号の後に何も書かないか、None キーワードを使用することで表すことができます。
; foo = ; foo を空の文字列に設定する(推奨)
; foo = None ; foo を空の文字列に設定する
; foo = "None" ; foo を文字列 'None' に設定する
; ディレクティブ値に動的拡張機能(PHP拡張機能またはZend拡張機能)の定数を使用する場合は、
; これらの定数は、これらの動的拡張命令行 (extension または zend_extension) を読み込んだ後にのみ使用できます。
;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 本番環境と開発環境;;
;;;;;;;;;;;;;;;;;;;;;;;;;;
; PHP では、運用環境と開発環境用に php.ini-production と php.ini-development という 2 つの参照構成が提供されています。
; 2 つの参照構成の違いは次のとおりです。
;エラーを表示
; デフォルト値: オン
; 開発価値: オン
; 制作価値: オフ
;起動エラーを表示する
; デフォルト値: オン
; 開発価値: オン
; 制作価値: オフ
;エラー報告
; デフォルト値: E_ALL
; 開発値: E_ALL
; プロダクション値: E_ALL & ~E_DEPRECATED & ~E_STRICT
;ログエラー
; デフォルト値: オフ
; 開発価値: オン
; 制作価値: オン
;最大入力時間
; デフォルト値: -1 (無制限)
; 開発値:60(60秒)
; 制作価値: 60 (60秒)
;出力バッファリング
; デフォルト値: オフ
; 開発価値: 4096
; 制作費: 4096
;レジスタ_argc_argv
; デフォルト値: オン
; 開発価値: オフ
; 制作価値: オフ
;リクエスト注文
; デフォルト値: なし
; 開発価値:「GP」
; 制作費:「GP」
;セッション.gc_divisor
; デフォルト値: 100
; 開発価値: 1000
; 制作費: 1000
;session.sid_bits_per_character
; デフォルト値: 4
; 開発価値: 5
; 制作価値: 5
;ショートオープンタグ
; デフォルト値: オン
; 開発価値: オフ
; 制作価値: オフ
;変数の順序
; デフォルト値: "EGPCS"
; 開発価値:「GPCS」
; 制作価値:「GPCS」
;zend.exception_ignore_args
; デフォルト値: オフ
; 開発価値: オフ
; 制作価値: オン
;zend.exception_string_param_max_len
; デフォルト値: 15
; 開発価値: 15
; 制作価値: 0
;;=========================================================================================
;;===========================================設定手順の詳細な説明==========================================
;;=========================================================================================
; 以下の各ディレクティブの値は、PHP-8.0 に組み込まれているデフォルト値と同じです (PHP-7.2、PHP-7.3、PHP-7.4 のバージョンも考慮されます)。
; つまり、「php.ini」が存在しない場合、またはいくつかの行を削除した場合、デフォルト値は同じになります。
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; SAPI (サーバー API) ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[apache2ハンドラー]
; この設定セクションのディレクティブは、PHP を Apache2 ハンドラー モジュール (php_module) として使用する場合にのみ意味を持ちます。
; [ヒント] httpd.conf の php_value/php_flag および php_admin_value/php_admin_flag ディレクティブを使用して、php.ini の設定を上書きできます。
エンジン = オン
; PHP 解析エンジンを有効にするかどうか。通常、ディレクトリまたは仮想ホストに基づいて PHP 解析エンジンのオン/オフを切り替えるために使用されます。
最終更新日 = オフ
; PHP スクリプトの最終変更時刻を「Last-Modified:」応答ヘッダーに配置するかどうか。
xbithack = オフ
; 実行ビットがある限り、拡張子に関係なくファイルを PHP スクリプトとして解析するかどうか。
[fpm-fcgi]
; この設定セクションのディレクティブは、PHP を FPM/FastCGI モードで使用する場合にのみ意味を持ちます。
cgi.check_shebang_line = オン
; スクリプトの先頭 (シバン) で #! で始まる行をチェックするかどうか。
; スクリプトをスタンドアロンと PHP CGI モードの両方で実行する場合には、このシェバンが必要です。
; オンに設定すると、この行は CGI モードで自動的に無視されます。
cgi.discard_path = オフ
; クライアントが .htaccess セキュリティ保護をバイパスできないようにセキュリティを強化するために、PHP CGI ディレクトリを Web ディレクトリ ツリーの外側に配置できるようにするかどうか。
cgi.fix_pathinfo = オン
; CGI に実際の PATH_INFO/PATH_TRANSLATED 値を提供するかどうか (CGI 仕様に準拠)。
; 以前の動作では、PATH_INFO に関係なく、PATH_TRANSLATED が SCRIPT_FILENAME に設定されていました。
; このディレクティブをオンにすると、PHP は CGI 仕様に準拠するようにパスを修正しますが、そうでない場合は、古い非準拠の動作が引き続き使用されます。
; このディレクティブをオンにして、PATH_TRANSLATED の代わりに SCRIPT_FILENAME を使用するようにスクリプトを修正することをお勧めします。
; [ヒント] Nginx で PHP-FPM を使用する場合でも、このディレクティブはオンにしておく必要があります (インターネット上には古い記事が多数あります)。
; PATH_INFO の詳細については、cgi 仕様を参照してください。
cgi.force_redirect = オン
; CGI強制リダイレクトを有効にするかどうか。セキュリティ向上のため、有効にすることを強くお勧めします。
; 注意: IIS ではこれをオフにする必要があります。
cgi.nph = オフ
; CGI モードですべてのリクエストに「ステータス: 200」ステータス コードを強制的に送信するかどうか。
cgi.redirect_status_env =
; cgi.force_redirect = On で、Apache以外の何かでPHPを実行している場合、
; cgi リダイレクト環境変数名を設定する必要があるかもしれません。PHP はこの環境変数に基づいて実行を続行するかどうかを決定します。
; この変数を設定するとセキュリティ上の脆弱性が生じる可能性がありますので、設定する前に何をしているのかをよく理解してください。
cgi.rfc2616_headers = オフ
; HTTP 応答コードを送信するときに PHP が使用するステータス ヘッダーを指定します。
; オフに設定すると、Apache やその他の Web サーバーでサポートされている RFC3875 標準に準拠したヘッダー (例: 「ステータス: 404 Not Found」) が使用されます。
; オンに設定すると、RFC2616 標準に準拠したヘッダー (例: 「HTTP/1.0 404 Not found」) が使用されます。
; 何をやっているのかよく分かっている場合を除き、常にデフォルト値をオフのままにしておいてください。
fastcgi.error_header =
; display_errors = Off でアクセスしたPHPスクリプトに構文エラーが含まれている場合、
; デフォルトでは、ユーザーには「HTTP/1.1 500 内部サーバー エラー」というステータス行が表示された空のページが表示されます。
; デフォルトのステータス ラインが不適切だと思われる場合は、このディレクティブを使用してステータス ラインをカスタマイズできます (例: 「HTTP/1.1 550 Server Exploded」)。
fastcgi.impersonate = オフ
; IIS の FastCGI は、クライアント セキュリティ トークンを偽装する機能をサポートしており、これにより IIS はランタイム要求のベースとなるセキュリティ コンテキストを定義できます。
ただし、Apacheはこの機能をサポートしていません。IISで実行する場合はオンに設定し、そうでない場合はオフに設定してください。
fastcgi.logging = オン
; FastCGI ログを有効にするかどうか。
fpm.config =
; FPM 設定ファイル (php-fpm.conf) へのパスを明示的に指定します。
[cli-server]
; この設定セクションのディレクティブは、PHP の組み込み CLI Web サーバーを使用する場合にのみ有効です。
cli_server.color = オフ
; CLI Web サーバーが端末出力に色を使用するかどうか。
[クリ]
; この設定セクションの指示は、PHP コマンドライン モード (実際には readline モジュールの設定) を使用する場合にのみ意味を持ちます。
cli.pager =
; コマンドライン出力を表示するための外部ページャ。
cli.prompt = "\b \>"
; 対話型で使用する場合のコマンド ライン プロンプト。
;;;;;;;;;;;;;;;;;;;
;; コア;;
;;;;;;;;;;;;;;;;;;;
[コア言語]
short_open_tag = オン
; 使用することは許可されていますか? 「ショートマーク。」
; PHP プログラムが管理された環境でのみ実行され、自分専用のものである場合を除き、短いタグを使用しないでください。
; PHP を XML で使用する場合は、このオプションをオフにして直接埋め込みを容易にすることができます。 「」。
; この指令は略語形式には影響しません。=",它始终和"
精度 = 14
; 浮動小数点データの精度(有効桁数)を表示します。
シリアル化精度 = -1
; float 型および double 型のデータを連続的に格納する場合の精度 (有効桁数)。
; デフォルト値 -1 は、最適な精度を自動的に選択することを意味します。これは、浮動小数点データがデシリアライザーによってデコードされるときにデータが失われないことを保証するのに十分な精度です。
; この値は、json_encode() によってエンコードされた double データの精度にも影響します。
無効化機能 =
; このディレクティブは、特定の関数を無効にするために、コンマで区切られた関数名のリストを受け入れます。
; この命令は組み込み関数のみを無効にでき、ユーザー定義関数は無効にできません。
無効にするクラス =
; このディレクティブは、特定のクラスを無効にするために、コンマで区切られたクラス名のリストを受け入れます。
expose_php = オン
; サーバーに PHP がインストールされているという事実を公開するかどうか (その署名を http ヘッダーに追加します)。
; 直接的なセキュリティ上の脅威にはなりませんが、サーバーに PHP がインストールされていることをクライアントに認識させます。
ハードタイムアウト = 2
; スクリプトの実行時間が max_execution_time 制限に達すると、スクリプトは「ソフトかつ安全に」終了します。
; この命令は、スクリプトをこの「ソフトかつ安全な」方法で終了するまでの最大許容時間 (秒単位) を設定します。
; タイムアウト(デフォルトは 2 秒)が経過すると、未解放のリソースを解放せずに強制的に終了します。
zend.アサーション = 1
; アサーションをコンパイルする方法:
; -1 コンパイルしない(本番モード)
; 0 コンパイルするが実行時にはスキップする
; 1 コンパイルと実行(開発モード)
zend.exception_ignore_args = オフ
; 例外によって生成されたスタック トレースから引数を除外するかどうか。
; スタック トレースに機密情報が出力されないようにするために、運用サーバーではオンに設定することをお勧めします。
zend.exception_string_param_max_len = 15
; スタック トレース パラメータで許可される文字列の最大長 (値の範囲 = 0 ~ 1000000)。
; zend.exception_ignore_args = Off の場合にのみ意味を持ちます。
; 機密情報の出力を減らすために、運用サーバーでは 0 に設定することをお勧めします。
zend.multibyte = オフ
; PHP スクリプトが CP936、Big5、CP949、Shift_JIS などの安全でない文字エンコードを使用できるようにするかどうか。
; ISO-8859-1 と互換性のある安全な文字エンコーディング (UTF-8、EUC、...) では、このディレクティブを有効にする必要はありません。
; この機能を使用するには、mbstring 拡張モジュールをロードする必要があります。
zend.script_encoding =
; PHP スクリプトの最初の行に「declare(encoding=...)」ステートメントがない場合に使用されるデフォルトの文字エンコーディング。
; このディレクティブを設定すると、スクリプトは自動的に mb_convert_encoding() 関数を使用します。
; すべての文字列を zend.script_enconding から mbstring.internal_encoding に自動的に変換します。
; zend.multibyte = On の場合にのみ意味を持ちます。
; スクリプトが ISO-8859-1 と互換性のない文字エンコーディングを使用する場合は、このディレクティブを明示的に設定することをお勧めします。
zend.detect_unicode = オン
; スクリプトの BOM (バイト オーダー マーク) をチェックして、スクリプトにマルチバイト文字が含まれているかどうかを検出するかどうか。
; zend.multibyte = On の場合にのみ意味を持ちます。
zend.signal_check = オフ
; シャットダウン時に置き換えられたシグナルハンドラをチェックするかどうか(Unix のみ)
[コアリソース制限]
メモリ制限 = 128M
; スクリプトが要求できる最大メモリ (バイト) (単位として K と M を使用できます) (post_max_size の値よりも大きくする必要があります)。
; これにより、不正なスクリプトがサーバーのメモリをすべて消費するのを防ぐことができます。これを -1 に設定すると、メモリ制限が解除されます。
; このディレクティブを設定すると、memory_get_usage() 関数が使用できるようになります。
[コアパフォーマンス]
リアルパスキャッシュサイズ = 4M
; PHP で使用される realpath (正規化された絶対パス名) バッファ サイズを指定します。
; バッファサイズ = パス文字列の合計長 + キャッシュアイテム関連データ。主に長いパスをキャッシュする場合は、キャッシュサイズを大きくする必要があります。
; この値はキャッシュ内のパスの数を直接制御するものではありません。PHPが多数のファイルを開くシステムでは、パフォーマンスを向上させるためにこの値を増やす必要があります。
; 注意: open_basedir が有効な場合、realpath キャッシュは無効になります。
リアルパスキャッシュTTL = 120
; Realpathキャッシュの有効期間(秒)。ファイルの変更がほとんどないシステムでは、この値を増やすことでパフォーマンスを向上させることができます。
[コアデータ処理]
arg_separator.output = "&"
; PHP によって出力される URL 内のパラメータを区切るために使用される区切り文字。
; 「&」や「,」、「;」などに設定することもできます。
arg_separator.input = "&"
; URL内の変数を解析する際にPHPが使用する区切り文字のリスト。文字列内のすべての文字が区切り文字として扱われます。
; 「;,&」などにも設定できます。
variables_order = "EGPCS"
; 登録するスーパーグローバル配列。$_ENV、$_GET、$_POST、$_COOKIE、$_SERVERを表すには、それぞれE、G、P、C、Sを使用します。
; これらの配列を登録するとパフォーマンスが低下し、$_ENV は一般的に使用されないため、$_ENV を登録することはお勧めしません。
; [ヒント] FastCGI モードでは、$_SERVER には常に環境変数が含まれます (つまり、S は常に ES と同等です)。
; 「GPCS」に設定し、getenv() を使用して環境変数にアクセスすることをお勧めします。
リクエストオーダー =
; G、P、C スーパーグローバル配列の要素を $_REQUEST スーパーグローバル配列に登録する方法。
; この設定は、G、P、C のどれを登録するかを決定するだけでなく、登録時の上書き順序も決定します (後の値が前の値を上書きします)。
; [注] 空に設定すると、$_REQUEST を空のままにするのではなく、variables_order の値を継承することになります。「GP」に設定することをお勧めします。
auto_globals_jit = オン
; $_ENV、$_REQUEST、$_SERVER 変数を、実際に使用されるときにのみ作成するかどうか (スクリプトの開始時に自動的に作成するかどうか)。
; これらの配列がスクリプト内で使用されていない場合は、このディレクティブをオンにするとパフォーマンスが向上します。
register_argc_argv = オン
; $argv および $argc グローバル変数を登録するかどうか (GET メソッドの情報が含まれる場合があります)。
; $argv配列には、スクリプトに渡されるすべての引数が含まれます。$argc変数には引数の数が格納されます。
; パフォーマンスを向上させるには、このディレクティブをオフにすることをお勧めします。
; [ヒント] CLIモードでは、このコマンドはOnにハードコードされています
enable_post_data_reading = オン
; POSTデータの読み取りを許可するかどうか。オフに設定すると、$_POSTと$_FILESは常に空になります。
; POST データを取得する唯一の方法は、php://input ストリーム ラッパーを使用することです。
; オフは、リクエストをプロキシしたり、メモリ効率の高い方法で POST データを処理する場合にのみ適しています。
post_max_size = 8M
; 受け入れ可能なPOSTデータの最大長(バイト)(「0」は無制限を意味します)。enable_post_data_reading = Onの場合にのみ意味を持ちます。
; この設定はファイルのアップロードにも影響します(upload_max_filesizeの値よりも大きくする必要があります)。POSTデータが制限を超えた場合、$_POSTと$_FILESは空になります。
; メモリ制限が有効な場合、この値はmemory_limitの値より小さくする必要があります。
自動ファイル先頭追加 =
自動追加ファイル =
; PHPスクリプトの前後に自動的に挿入するファイル名。この機能を無効にするには、空に設定してください。
; 指定されたファイルは include() 関数によってインクルードされるのと同じようにインクルードされるため、include_path ディレクティブの値が使用されます。
; 注意: スクリプトが exit() によって終了した場合、自動ポストフィックスは実行されません。
default_mimetype = "text/html"
デフォルト文字セット = "UTF-8"
; HTTPヘッダー「Content-Type:」のデフォルト値を設定します。両方を空に設定すると、「Content-Type:」ヘッダーは出力されません。
; デフォルト値は、「Content-Type: text/html; charset=UTF-8」を出力することを意味します。
; default_charset を空に設定することは推奨されません。
入力エンコーディング =
; PHP入力で使用される文字エンコーディング。これを空に設定すると、default_charsetの値が使用されます。
出力エンコーディング =
; PHP出力で使用される文字エンコーディング。これを空に設定すると、default_charsetの値が使用されます。
内部エンコーディング =
; PHP が内部的に使用する文字エンコーディング。空に設定すると、default_charset の値が使用されます。
[コアパス]
include_path = ".;/path/to/php/pear"
; require()、include()、fopen()、file()、readfile()、file_get_contents() などの関数がファイルを見つけるためのディレクトリのセットを指定します。
; 形式はシステムの PATH 環境変数に似ています (UNIX ではコロンで区切られ、Windows ではセミコロンで区切られます)。
; UNIX: "/path1:/path2"
; Windows: "\path1;\path2"
; 現在のディレクトリを基準としたファイルを直接表すには、「./path/to/file」を使用する方が効率的です (このコマンドでは「.」の使用は推奨されません)。
; さらに、このディレクティブを空に設定すると、ファイル システム上のファイルの検索のパフォーマンスが向上します。
; このディレクティブの値は、set_include_path() を使用して実行時に変更できます。
オープンベースディレクトリ =
; セキュリティを強化するために、PHP が操作できるすべてのファイルをこのグループ ディレクトリ リストに制限します (空に設定すると、すべてのファイルを開くことができるようになります)。
; スクリプトが指定されたディレクトリ ツリー外のファイルを開こうとすると、拒否されます。
; すべてのシンボリック リンクは解決されるため、シンボリック リンクを使用してこの制限を回避することはできません。
; 特別な値 '.' は、スクリプトが保存されているディレクトリが基本ディレクトリとして使用されることを意味しますが、これは安全ではありません (スクリプトは chdir() を使用して作業ディレクトリを変更できます)。
; 共有サーバーの場合、異なる仮想ホストまたはディレクトリに対して httpd.conf でこのディレクティブを柔軟に設定すると非常に便利です。
; Apache モジュールとして使用する場合、親ディレクトリの open_basedir パスが自動的に継承されます。
; Windowsではディレクトリの区切りにセミコロンが使用され、UNIXシステムではディレクトリの区切りにコロンが使用されます。移植性の高いコードを書くには、PATH_SEPARATOR定数を使用することをお勧めします。
; 注意: この機能を有効にすると、realpath キャッシュは無効になります。
ドキュメントルート =
; PHPの「CGIルートディレクトリ」。空でない場合にのみ有効です。
; 実行可能プログラム/スクリプトを Web サーバーのメイン ドキュメント ディレクトリ (「htdocs」など) に配置することは安全ではないとみなされます。
; たとえば、設定エラーにより、スクリプトは通常の HTML として表示されます。
; そのため、多くのシステム管理者は、メインのドキュメント ディレクトリの外部に、CGI 経由でのみアクセスできるディレクトリを設定します。
; このディレクトリの内容は解析されるだけで、そのまま表示されることはありません。
; このディレクティブが設定されている場合、PHP は doc_root ディレクトリ内のファイルのみを解釈します。
; ディレクトリ外のスクリプトが PHP インタープリターによって実行されないようにします (user_dir を除く)。
; PHP のコンパイル時に FORCE_REDIRECT が指定されていない場合は、このディレクティブを設定する必要があります。
; IIS 以外のサーバー上で CGI として実行する場合は、マニュアルのセキュリティ セクションを必ずお読みください。
; 安全な代替策としては、cgi.force_redirect ディレクティブを使用することです。
ユーザーディレクトリ =
; /~username でスクリプトを開く際にどのディレクトリを検索するかをPHPに指示します。これは空でない場合にのみ有効です。
つまり、ユーザーディレクトリの下のPHPファイルの基本ディレクトリ名を使用します。例: "public_php"
user_ini.cache_ttl = 300
; .user.ini ファイルの再読み取り間隔の秒数 (.user.ini ファイルの有効期間)。
user_ini.filename = ".user.ini"
; ディレクトリごとにユーザー定義のphp.iniファイルの名前(CGI/FastCGIモードでのみサポートされます)。このパラメータを空に設定すると、この機能は無効になります。
; この機能を有効にすると、メインの php.ini に加えて、実行された PHP スクリプトが配置されているディレクトリから Web ルート ディレクトリまでもスキャンされます。
; 実行された PHP スクリプトが Web ルート ディレクトリの外部にある場合は、PHP スクリプトが配置されているディレクトリのみがスキャンされます。
; .user.ini ファイルでは、PHP_INI_PERDIR および PHP_INI_USER タイプのディレクティブのみが許可されます。
; この機能を有効にすると、PECL htscanner 拡張機能は廃止されます。
extension_dir = "/path/to/phpext"
; 拡張ライブラリ (モジュール) が保存されるディレクトリ。PHP が動的拡張モジュールを見つけるために使用するディレクトリでもあります。
; Windowsのデフォルト値は「C:\php\ext」です
; Unix でのデフォルト値はコンパイル時の構成によって異なります。
sys_temp_dir = "/path/to/tmp"
; 一時ファイル用の一時ディレクトリ。デフォルトはシステムの一時ディレクトリです(sys_get_temp_dir()関数を参照)。
;extension=PHPモジュール名(プレフィックスとサフィックスなし、例:mbstring)
;zend_extension=Zendモジュール名(プレフィックスとサフィックスなし、例:opcache)
; extension_dir ディレクトリにないモジュールの場合は、モジュール ファイルの完全な絶対パスを直接記述できます。
; [注意] exifモジュールはmbstringの後にロードする必要があります
[コアファイルアップロード]
file_uploads = オン
; HTTPファイルアップロードを許可するかどうか。upload_max_filesize、upload_tmp_dir、post_max_sizeディレクティブを参照してください。
アップロード_tmp_dir =
; アップロードされたファイルを保存するための一時ディレクトリ(PHPプロセスが書き込み可能なディレクトリである必要があります)。空に設定すると、システムのデフォルトの一時ディレクトリが使用されます。
; 指定されたディレクトリが書き込み可能でない場合は、システムのデフォルトの一時ディレクトリが自動的に使用されます。
; open_basedir が設定されている場合は、システムのデフォルトの一時ディレクトリが含まれている必要があります。含まれていない場合、アップロード機能は動作しません。
アップロード最大ファイルサイズ = 2M
; アップロードできるファイルの最大サイズ(post_max_size の値より小さくする必要があります)。
最大ファイルアップロード数 = 20
; 1 回の HTTP リクエストで同時にアップロードできるファイルの最大数。
[コアウィンドウズ]
windows.show_crt_warning = オフ
; C ランタイム警告メッセージを表示するかどうか (Windows プラットフォームでのみ使用可能)
;;;;;;;;;;;;;;;;;;;;;
;; コア拡張;;
;;;;;;;;;;;;;;;;;;;;;
[日時]
; 最初の 4 つの構成オプションは現在、date_sunrise() 関数と date_sunset() 関数でのみ使用されます。
date.default_latitude = 31.7667
; デフォルトの緯度
date.default_longitude = 35.2333
; デフォルトの経度
date.sunrise_zenith = 90.833333
; デフォルトの日の出天頂
date.sunset_zenith = 90.833333
; デフォルトの日没天頂
日付.タイムゾーン =
; TZ 環境変数が設定されていない場合に、すべての日付と時刻関数で使用されるデフォルトのタイムゾーン。
; 中国本土の場合は「PRC」または「Asia/Shanghai」を使用してください
; タイムゾーンを適用する優先順位は次のとおりです。
; 1. date_default_timezone_set() 関数によって設定されたタイムゾーン(設定されている場合)
; 2. TZ環境変数(空でない場合)
; 3. コマンドの値(設定されている場合)
; 4. PHP がそれを推測します (オペレーティング システムがサポートしている場合)
; 5. 上記のいずれも機能しない場合は、「UTC」を使用してください
[エラー処理]
エラー報告 = E_ALL
; エラー レポートに含める内容 (ビット フィールドのオーバーレイ):
; 1 E_ERROR 致命的なランタイムエラー
; 2 E_WARNING 実行時警告(致命的ではないエラー)
; 4 E_PARSE コンパイル時解析エラー
; 8 E_NOTICE 実行時警告(通常はバグですが、意図的な場合もあります)
; 16 E_CORE_ERROR PHP 起動時の初期化中に致命的なエラーが発生しました
; 32 E_CORE_WARNING PHP 起動時の初期化プロセス中の警告 (致命的ではないエラー)
; 64 E_COMPILE_ERROR コンパイル中に致命的なエラーが発生しました
; 128 E_COMPILE_WARNING コンパイル時の警告(致命的ではないエラー)
; 256 E_USER_ERROR ユーザー定義の致命的なエラー
; 512 E_USER_WARNING ユーザー定義の警告(致命的ではないエラー)
; 1024 E_USER_NOTICE ユーザー定義のリマインダー(多くの場合はバグですが、意図的な場合もあります)
; 2048 E_STRICT エンコーディング標準化の警告(前方互換性のための変更方法に関する提案)
; 4096 E_RECOVERABLE_ERROR 致命的なランタイムエラーです。キャッチされない場合は E_ERROR として扱われます。
; 8192 E_DEPRECATED 将来のバージョンでは正常に動作しない可能性があるコードについて警告します
; 16384 E_USER_DEPRECATED ユーザー定義の警告(将来のバージョンでは正常に動作しない可能性のあるコードに関する警告)
; 32767 E_ALL 上記のすべてのエラーと警告
; [注意] これらの定数はphp.iniの外部では使用できません(数値を使用する必要があります)。
; 開発環境を 2147483647 (すべてのバイナリ ビットが 1) に設定すると、現在または将来表示される可能性のあるさまざまなエラーと警告をオンにできます。
; 実稼働サーバーでは、過度のパフォーマンス低下を避けるために、E_ALL、~E_DEPRECATED、~E_STRICT に設定することをお勧めします。
; パフォーマンスをさらに向上させるには、E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR (エラーのみ) に設定することを検討してください。
display_errors = オン
; 出力の一部としてエラー メッセージを表示するかどうか。
; 最終的な運用 Web サイトでは、この機能をオフにして、代わりにエラー ログを使用することを強くお勧めします。
; 最終的に公開される Web サイトでこの機能を有効にすると、機密情報が公開される可能性があります。
; 特殊値 STDOUT および STDERR は CGI/CLI モードでのみ使用できます (CLI モードのデフォルト = STDOUT)。
display_startup_errors = オン
; PHP の起動時にエラーを表示するかどうか (PHP7 のデフォルト値 = オフ)。
; このパラメータをオフにすると、display_errors = On であっても PHP の起動時にエラーは表示されません。
; 機密構成情報の漏洩を防ぐため、実稼働サーバーではこの機能をオフにすることをお勧めします。
log_errors = オフ
; error_log で指定された宛先にエラー情報を記録するかどうか。
; 実稼働環境では、直接出力するのではなく、ログエラーを使用することを強くお勧めします。
; これにより、機密情報を公開することなく、何が問題であったかを知ることができます。
; FPM/FastCGI モードのデフォルト値 = オン
ログエラー最大長 = 1024
; エラーメッセージの最大長(バイト単位)。0に設定すると、長さは無制限になります。
ignore_repeated_errors = オフ
; 繰り返し表示されるエラー メッセージを無視するかどうか。
; エラー メッセージは、繰り返しとみなされるには同じスクリプト内の同じ行に表示する必要があります (ignore_repeated_source = On の場合を除く)。
ignore_repeated_source = オフ
; ignore_repeated_errors = On の場合、エラー メッセージのソースを無視するかどうか (異なるコードからの同じエラー メッセージを無視する)。
report_memleaks = オン
; メモリリークを報告するかどうか。このパラメータは、デバッグモードでコンパイルされたPHPでのみ機能します。
; error_reportingディレクティブにE_WARNINGを含める必要があります
report_zend_debug = オフ
; ドキュメントはまだありません (PHP7 Apache/FPM/FastCGI モードのデフォルト = オン)
html_errors = オン
; エラー メッセージで HTML タグを使用するかどうか。
; エラー ログが必要な場合はこの機能を使用しないでください。
; [ヒント] CLIモードでは、このコマンドはOffにハードコードされています
xmlrpc_errors = オフ
; エラー レポート形式を XML-RPC エラー メッセージ形式に設定するかどうか (通常のエラー レポートをオフにする)。
xmlrpc_error_number = 0
; XML-RPC faultCode 要素の値 (xmlrpc_errors = On の場合にのみ意味を持ちます)。
docref_root = ;"https://www.php.net/manual/zh/"
docref_ext = ;.php"
; html_errors = On かつ docref_root が設定されている場合、PHP はエラー メッセージにハイパーリンクを表示します。
; エラーまたはエラーの原因となった機能について説明しているページへの直接リンク。
; PHP マニュアルをダウンロードした後、docref_root ディレクティブをローカル マニュアルがある URL ディレクトリに指定できます。
; ファイル拡張子を指定するには、docref_ext ディレクティブも設定する必要があります (「.」を含める必要があります)。
; [注意] 本番サーバーではこの機能を使用しないでください。
error_prepend_string = ;""
error_append_string = ;""
; エラーメッセージの前後に追加される文字列(通常は色を追加するために使用されます)
エラーログ =
; エラーログの出力先を設定します。ファイル(推奨)の場合は、書き込み権限が必要です。
; システムログに記録するにはsyslogに設定します(NTの場合はイベントログ、Unixの場合はsyslog(3))。
; 空に設定すると、Apache エラー ログ (apache2handler)、標準エラー (CLI)、ログなし (FPM) となります。
; FPM/FastCGI モードのデフォルト値="/var/log/php-fpm/www-error.log"(RHEL/CentOS)
syslog.facility = LOG_USER
; システム ログ (ログを生成するサブシステム) 内のファシリティ フィールドの値。
; error_log = syslog の場合にのみ意味があります。
syslog.filter = 制御なし
; ログ メッセージ内の安全でない文字をフィルターします (「\x???」としてエスケープします)。
; ascii (ASCII 文字と NL 文字のみ許可されます)
; no-ctrl (制御文字以外の文字をすべて許可)
; すべて(すべての文字が許可されます)
; raw (すべての文字を許可しますが、ログメッセージを改行で分割しません)
; error_log = syslog の場合にのみ意味があります。
syslog.ident = php
; システム ログ内の ident フィールド値 (ログ メッセージ プレフィックス [識別文字列])。
; error_log = syslog の場合にのみ意味があります。
[ファイルストリーム]
allow_url_fopen = オン
; URL(http://や ftp://) をファイルとして保存します。
allow_url_include = オフ
; include/require URL(http://や ftp://)。
ユーザーエージェント =
; URL にアクセスする際に PHP が使用する「User-Agent」文字列
デフォルト_ソケット_タイムアウト = 60
; ソケットストリームのデフォルトのタイムアウト(秒)
から =
; 匿名FTPのパスワードを定義する(電子メールアドレス)
行末の自動検出 = オフ
; PHP に行末 (EOL) を自動的に検出させるかどうか。
; スクリプトがMacintoshファイルを処理する必要がある場合、またはMacintosh上で実行してunixまたはwin32ファイルを処理する必要がある場合、
; このディレクティブをオンにすると、PHP は EOL を自動的に検出し、fgets() および file() 関数が適切に動作するようになります。
; しかし、Unix システムで項目区切りとしてキャリッジリターン (CR) を使用する人にとっては、互換性のない動作も発生します。
; さらに、最初の行の EOL 規則を検出すると、パフォーマンスがわずかに低下します。
[フィルター]
;拡張子=フィルター
; 信頼できないソースからのデータを確認し、フィルタリングします。
フィルター.default = unsafe_raw
; 指定されたフィルターを使用して、$_GET、$_POST、$_COOKIE、$_REQUEST、$_SERVER データをフィルターします (unsafe_raw はフィルター処理しないことを意味します)。
; 生データはfilter_input()関数を介してアクセスできます。
フィルター.デフォルトフラグ =
; デフォルトのフィルタ フラグ。
[オプション情報]
assert.active = オン
; assert() アサーション評価を有効にするかどうか。
assert.bail = オフ
; 失敗したアサーションが発生したときにスクリプトの実行を中止するかどうか
assert.warning = オン
; 失敗したアサーションごとに警告を発行するかどうか
アサート.コールバック =
; 失敗したアサーションが発生したときに実行されるコールバック関数
assert.exception = オン
; アサーションが失敗したときに AssertionError 例外をスローするかどうか
; PHP7 のデフォルト値 = オフ
enable_dl = オン
; dl() 関数の使用を許可するかどうか。dl() 関数は、PHP が Apache モジュールとしてインストールされている場合にのみ有効です。
; dl() 関数を無効にするのは、open_basedir ディレクティブの制限を回避できるため、主にセキュリティ上の理由からです。
; この機能は将来的に削除される予定です。オフに設定することを強くお勧めします。
最大実行時間 = 30
; 各スクリプトに許可される最大実行時間 (秒単位)。0 は制限がないことを意味します。
; このパラメータは、低品質のスクリプトがサーバーのリソースを無限に占有するのを防ぐのに役立ちます。
; このディレクティブはスクリプト自体の実行時間にのみ影響します。スクリプト実行以外の時間は、
; たとえば、system()/sleep() 関数、データベース クエリ、ファイルのアップロードなどは含まれません。
; [ヒント] CLIモードでは、このコマンドは「0」(制限なし)にハードコードされています。
; [ヒント] このディレクティブを Apache の Timeout ディレクティブよりも大きい値に設定しないでください (PHP の実行が途中で中断される可能性があります)。
最大入力時間 = -1
; 各スクリプトが入力データ (POST、GET、アップロード) を受信するための最大許容時間 (秒単位)。
; -1 は無制限を意味します。本番サーバーでは、スクリプトが無期限に実行されるのを防ぐため、明示的に値を制限するようにしてください。
; ユーザーの接続速度が遅く、大きなファイルをアップロードする必要がある場合は、より大きな値を設定する必要があります。
; [ヒント] CLIモードでは、このコマンドは「-1」(制限なし)にハードコードされています。
最大入力ネストレベル = 64
; 入力変数の最大ネストの深さ ($_GET、$_POST、$_COOKIE ...)
最大入力変数 = 1000
; 入力変数のメンバーの最大合計数 ($_GET、$_POST、$_COOKIE ...)。
この指令はハッシュ衝突によるサービス拒否攻撃の可能性を軽減します
; 制限を超える入力変数は切り捨てられ、E_WARNING が生成されます。
zend.enable_gc = オン
; 循環参照カウンタコレクタ(ガベージコレクション)を有効にするかどうか。このディレクティブを無効にすると、メモリリークが発生する可能性があります。
[郵便]
mail.add_x_header = オフ
; X-PHP-Originating-Script: ヘッダーに「スクリプト UID + ファイル名」情報を追加するかどうか
mail.force_extra_parameters =
; mail() 関数の 5 番目のパラメータの必須指定。
メール.log =
; mail() 関数の呼び出しをログに記録する方法。ログに記録しない場合は空に設定します。
; ファイルへの記録を示すためにファイル パスに設定することも、システム ログへの記録を示すために syslog に設定することもできます。
SMTP = "ローカルホスト"
; mail() 関数が電子メールの送信に使用する SMTP サーバーのホスト名または IP アドレス (Windows のみ)。
SMTP_ポート = 25
; SMTP サーバーのポート番号 (Windows のみ)。
送信元メール =
; メールを送信するときの「From:」ヘッダー内の電子メール アドレス (win32 のみ)。
; このオプションは、「Return-Path:」ヘッダーも設定します。
sendmail_path = sendmailへのパス
; sendmail プログラムへのパス (コマンドライン引数を含む)。
; configure スクリプトはこのプログラムを見つけてデフォルト値 (通常は「/usr/sbin/sendmail -t -i」) に設定しようとしますが、失敗した場合はここで手動で設定できます。
; sendmail を使用していないシステムでは、このディレクティブを sendmail 代替プログラム (存在する場合) に設定する必要があります。
; Windows プラットフォームでは、このディレクティブのデフォルト値は空です。
; このディレクティブが Windows プラットフォーム上で設定されている場合、smtp smtp_port sendmail_from ディレクティブは無視され、ここで指定されたコマンドが実行されます。
[その他]
ignore_user_abort = オフ
; ユーザーが中止した場合でもリクエスト全体を完了するかどうか。
; リクエストが長すぎるとユーザーが中止したり、ブラウザがタイムアウトしたりする可能性があるため、これをオンに設定することを推奨します。
highlight.comment = "#FF8000"
highlight.default = "#0000BB"
highlight.html = "#000000"
highlight.keyword = "#007700"
highlight.string = "#DD0000"
; 構文強調表示モードの色 (通常は .phps ファイルの表示に使用されます)。
; できる限り 受け入れれば正常に動作します。
browscap = ;"c:/windows/system32/inetsrv/browscap.ini"
; ブラウザ機能ファイルの場所とファイル名 (この設定は PWS および IIS の場合にのみ必要です)。
[出力制御]
出力バッファリング = 0
; 出力バッファサイズ(バイト)。推奨値は4096です(ob_start()関数でも制御できます)。
; 出力バッファリングを使用すると、本文の内容を出力した後でも HTTP ヘッダー (Cookie を含む) を送信できます。
; 出力バッファリングを設定すると、送信されるネットワーク パケットの数が減ることがあります (ネットワーク パフォーマンスが向上します)。
; このパラメータの実際の利点は、使用する Web サーバーとスクリプトの種類によって大きく異なります。
; [ヒント] CLIモードでは、このコマンドは「0」(出力バッファリングを無効にする)にハードコードされています。
出力ハンドラ =
; すべてのスクリプト出力を出力ハンドラー関数にリダイレクトします。
たとえば、mb_output_handler() 関数にリダイレクトするために "mb_output_handler" に設定すると、文字エンコーディングは指定されたエンコーディングに透過的に変換されます。
; ここで出力ハンドラーを指定すると、出力バッファリングが自動的にオンになります (バッファ サイズ = 無制限)。
; 注0: ここではPHP組み込み関数のみ使用できます。カスタム関数は、スクリプト内でob_start()関数を使用して指定する必要があります。
; 注 1: ポータブル スクリプトではこのディレクティブに依存せず、ob_start() 関数を使用して出力処理関数を明示的に指定する必要があります。
; このコマンドを軽々しく使用しないでください。そうしないと、慣れていないスクリプトでエラーが発生する可能性があります。
; 注意 2: 2 つの出力処理関数「mb_output_handler」と「ob_iconv_handler」を同時に使用することはできません。
; 「ob_gzhandler」出力処理関数と「zlib.output_compression」ディレクティブは同時に使用できません。
; 注 3: 「zlib.output_compression = On」の場合、このディレクティブは空にする必要があります (代わりに「zlib.output_handler」を使用してください)。
暗黙のフラッシュ = オフ
; PHP 出力層が各出力ブロックの後にデータを自動的にフラッシュすることを要求するかどうか。
; これは、各 print()、echo()、HTML ブロックの後に、flush() 関数を自動的に呼び出すことと同じです。
; このオプションをオンにすると、プログラム実行のパフォーマンスに重大な影響が出るため、デバッグの場合にのみ推奨されます。
; [ヒント] CLIモードでは、このコマンドは「オン」(自動フラッシュを強制)にハードコードされています。
[PCRE]
pcre.バックトラック制限 = 1000000
; 最大バックトラッキング深度。
pcre.再帰制限 = 100000
; 再帰の最大深度。この値を高く設定しすぎると、プロセススタックスペースが不足し、PHP がクラッシュする可能性があります。
pcre.jit = 1
; PCRE ライブラリの JIT (ジャストインタイム) コンパイルを有効にするかどうか。
[ファー]
;拡張子=phar
; PHP アプリケーション/ライブラリをパッケージ化して展開を簡素化します (他のユーザーが使用できるように読み取り専用にします)
phar.readonly = オン
; Phar 読み取り専用モードを有効にするかどうか。本番環境ではこのコマンドを必ず有効にしてください。有効にしないと、重大なセキュリティ上の脆弱性が生じます。
phar.require_hash = オン
; すべての Phar アーカイブの署名を検証するかどうか(アーカイブ内容の改ざんを防ぐため)。セキュリティ強化のため、有効にすることをお勧めします。
phar.cache_list =
; サーバーの起動時に事前解析する Phar アーカイブのリスト (パフォーマンス向上のため)。
[セッション]
session.save_handler = ファイル
; セッションデータを保存および取得するためのストレージハンドラーの名前。デフォルトはファイル("files")です。
; これを「user」に設定すると、session_set_save_handler() を使用してカスタム ストレージ ハンドラーを登録できるようになります。
; 拡張モジュールは新しいストレージハンドラーを登録できます。登録済みのストレージハンドラーはすべてphpinfo()で確認できます。
セッション.save_path =
; save_handlerに渡されるパラメータ。ファイルハンドラの場合、これはセッションデータファイルが保存されるディレクトリです(デフォルトはシステムの一時ディレクトリです)。
; ディレクトリを定義するには、「N;[MODE;]/path」モードを使用できます。オプションの [MODE;] は、8 進数で表されたデータ ファイルのアクセス許可です (デフォルトは「600」)。
; 整数 N は、多数のセッションのパフォーマンスを向上させるために、すべてのデータ ファイルを同じディレクトリに保存するのではなく、N レベルの深いサブディレクトリを使用することを意味します。
; 注意: (1) "N;[MODE;]/path" を囲む二重引用符は省略できません (";" はコメント文字であるため)。 (2) [MODE;] はプロセスの umask を書き換えません。
; (3) PHPはこれらのディレクトリ構造を自動的に作成しません(ext/sessionディレクトリのmod_files.shスクリプトを使用できます)。
; (4) ディレクトリ (「/tmp」など) が安全でないユーザーによって読み取られたり取得されたりできる場合、セキュリティ上の脆弱性 (セッション ID やセッション データの漏洩) につながります。
; (5) N>0の場合、自動ガベージコレクションは失敗します(詳細はsession.gc_*の説明を参照してください)。
; (6) N>2(各レイヤーには64個のサブディレクトリがあり、N=3は64*64*64のサブディレクトリを作成することを意味します)の設定は、セッション数が膨大な場合にのみ必要になる場合があります。
; (7)仮想ホストごとに異なるセッション保存ディレクトリを設定することをお勧めします。
; FPM/FastCGI モードのデフォルト値="/var/lib/php/session"(RHEL/CentOS)
セッション名 = PHPSESSID
; Cookie で使用されるセッション ID には、文字と数字のみを含めることができます。
session.auto_start = オフ
; クライアントが任意のページにアクセスしたときにセッション エンジンを自動的に初期化するかどうか。
; セッションを開始する前にクラス定義をロードする必要があるため、このオプションをオンにすると、オブジェクトをセッションに保存できません。
session.serialize_handler = php
; データのシリアル化/デシリアル化に使用するプロセッサ。「php」、「php_binary」、「php_serialize」を使用できます。
; 特定の制限や欠陥を回避するために、デフォルトの古い「php」の代わりに新しい「php_serialize」を使用することをお勧めします。
; [注意] WDDX サポートが有効になると、「wddx」のみが使用されます。
セッション.gc_確率 = 1
セッション.gc_divisor = 100
; セッションが初期化されるたびにガベージ コレクターを起動する確率を定義します。
; 収集確率は次のように計算されます: session.gc_probability/session.gc_divisor
; セッションページへのアクセス頻度が高いほど、この確率は小さくなります。1/(1000~5000) に設定することをお勧めします。
セッション.gc_maxlifetime = 1440
; このディレクティブで指定された秒数が経過すると、保存されたデータは「ガベージ」とみなされ、ガベージ コレクターによってクリーンアップされます。
; 判定基準はデータが最後にアクセスされた時刻(FAT ファイルシステムの場合はデータが最後に更新された時刻)です。
; 複数のスクリプトが同じsession.save_pathディレクトリを共有しているが、session.gc_maxlifetimeが異なる場合、
; すべての session.gc_maxlifetime ディレクティブの最小値が使用されます。
; 複数レベルのサブディレクトリを使用してデータ ファイルを保存する場合、ガベージ コレクターは自動的に起動しません。
; ガベージ コレクションを実行するには、カスタム スクリプト、cron ジョブ、またはその他の方法を使用する必要があります。
たとえば、次のスクリプトは、「session.gc_maxlifetime=1440」(24 分) を設定するのと同じです。
; cd /path/to/sessions; find -cmin +24 | xargs rm
セッション.referer_check =
; リクエスト ヘッダーの「Referer:」フィールドにここで指定した文字列が含まれていない場合、セッション ID は無効とみなされます。
; 注意: リクエスト ヘッダーに「Referer:」フィールドがまったく存在しない場合でも、セッション ID は有効であると見なされます。
; デフォルトは空で、チェックは実行されません (すべて有効とみなされます)。
セッション.use_strict_mode = 0
; 厳密なセッションIDモードを使用するかどうか(初期化されていないセッションIDを拒否する)。厳密モードを有効にすると、セッション固定攻撃からサーバーを保護できます。
; 「厳密モード」とは、ブラウザが初期化されていないセッション ID を送信した場合、サーバーは新しい初期化されたセッション ID で応答することを意味します。
; デフォルト値「0」は厳格モードを無効にすることを意味します。この機能を有効にするには「1」に設定することをお勧めします。
セッション.use_cookies = 1
; クライアント側でセッション ID を保存するために Cookie を使用するかどうか (有効にする場合は「1」、無効にする場合は「0」)。
セッション.use_only_cookies = 1
; クライアント側でセッション ID を保存するために Cookie のみを使用するかどうか (有効にする場合は「1」、無効にする場合は「0」)。
; この機能を有効にすると、URL でセッション ID を渡すことによって発生するセキュリティ上の問題を回避できます。
; セキュリティを強化するためにこのオプションを有効にすることをお勧めします。
セッション.cookie_lifetime = 0
; セッション ID を渡す Cookie の有効期間 (秒単位)。「0」は、ブラウザが開いている間のみ有効であることを意味します。
; [ヒント] サーバーの時間とクライアントの時間が厳密に一致していることを保証できない場合は、このデフォルト値を変更しないでください。
セッション.cookie_path = /
; セッション ID を渡すための Cookie パス。
セッション.cookie_domain =
; セッション ID を渡す Cookie のスコープ (ドメイン名)。
; デフォルト値が空の場合、ホスト名は Cookie 仕様に従って生成されます。
セッション.cookie_secure = 0
; クッキーを安全な接続 (https) 経由でのみ送信するかどうか (有効にする場合は「1」、無効にする場合は「0」)。
セッション.cookie_httponly = 0
; Cookie に httpOnly フラグ (HTTP プロトコル アクセスのみを許可) を追加するかどうか (「1」は有効、「0」は無効を意味します)。
; この機能を有効にすると、クライアント スクリプト (JavaScript など) が Cookie にアクセスできなくなります。
; このディレクティブを有効にすると、XSS 攻撃によるセッション ID ハイジャックを効果的に防ぐことができます。
セッション.cookie_samesite =
; SameSite属性の値をCookieに追加します(「Strict」、「Lax」、「None」のいずれか[引用符は必ず保持してください])。
; サーバーがクライアントに対して、この Cookie をクロスサイト リクエストに使用しないことを宣言できるようにすることで、クロスサイト リクエスト フォージェリの防止に役立ちます。
; すべてのブラウザがこの機能をサポートしているわけではありません。この値を空に設定すると、SameSite属性はCookieと共に送信されません。
; 「厳格」とは、POSTとGETの両方でサイト間でのCookieの送信が禁止されていることを意味します
; 「緩い」とは、POST によるサイト間の Cookie の送信を禁止するが、GET によるサイト間の Cookie の送信を許可することを意味します。
; 見る https://tools.ietf.org/html/draft-west-first-party-cookies-07
session.cache_limiter = キャッシュなし
; セッション ページのキャッシュ制御ポリシーを指定します (nocache|private|private_no_expire|public)。
; nocache はクライアントとプロキシ サーバーのキャッシュを無効にすることを意味します。public はクライアントとプロキシ サーバーのキャッシュを許可することを意味します。
; private はクライアントのキャッシュは許可されますが、プロキシ サーバーのキャッシュは禁止されることを意味します。
; private_no_expire は private と同じですが、「Expire:」応答ヘッダーを送信しません (Mozilla などのブラウザーが Expire 応答ヘッダーを正しく処理しない可能性があるバグを解決するため)。
; 空に設定すると、キャッシュポリシーに関連するレスポンスヘッダーは送信されません。詳細はsession_cache_limiter()関数を参照してください。
セッション.cache_expire = 180
; クライアントキャッシュ内のセッションページの有効期限(分単位)を指定します。session.cache_limiter = nocache の場合、この設定は意味を持ちません。
セッション.use_trans_sid = 0
; URL 内の SID (セッション ID) をプレーンテキストで表示するかどうか (「1」は有効、「0」は無効を意味します)。
; URL ベースのセッション管理は、Cookie ベースのセッション管理よりも常にリスクが高いため、無効にする必要があります。
session.trans_sid_tags = "a=href,area=href,frame=src,form="
; SID を含めるために書き換える HTML タグを指定します (session.use_trans_sid = On の場合にのみ意味があります)。
;