検索
ホームページバックエンド開発PHPチュートリアルphp.ini コア構成オプションの説明

php.ini コア構成オプションの説明

このリストには、コアの php.ini 構成オプションのみが含まれています。拡張機能の構成オプションについては、各拡張機能のドキュメント ページで説明されています。セッションのオプションはセッション ページにあります。

HTTPD オプション
表 G-3.HTTPD オプション

名前 デフォルト値 変更可能範囲 更新レコード
async_send "0" PHP_INI_ALL

言語オプション
表 G-4. 言語およびその他の構成オプション

名前 デフォルト値 変更可能範囲 更新レコード
short_open_tag "1" PHP asp_tags "0" PHP_INI_PERDIR は、PHP precision "14" PHP_INI_ALL
y2k_compliance "1" PHP_INI_ALL
allow_call_time_pass_reference "1" PHP expose_php "1" は php.ini でのみ設定可能です。
zend.ze1_compatibility_mode "0" PHP_INI_ALL PHP 5.0.0 以降で利用可能。

以下は、設定オプションの簡単な説明です。

short_open_tag boolean
PHP コード開始タグの短い形式 ( ?>) の使用を許可するかどうかを決定します。 XML で PHP を使用している場合は、このオプションを無効にして、 の組み込み使用を容易にすることができます。それ以外の場合は、PHP を通じて出力することもできます (例: )。無効にした場合は、完全な形式の PHP コード開始フラグ () を使用する必要があります。

注: このディレクティブは、 と同等の省略形 = にも影響します。この省略形を使用するには、short_open_tag をオンにする必要があります。

asp_tags boolean
通常の タグに加えて、ASP スタイルのタグ の使用を許可します。これには、出力変数値の省略形 も含まれます。詳細については、「HTML からの切り離し」セクションを参照してください。

注: ASP スタイル フラグのサポートは、バージョン 3.0.4 で新たに追加されました。

精度整数
浮動小数点数で表示される有効桁数。

y2k_compliance boolean
2000 年準拠を強制します (互換性のないブラウザでは問題が発生します)。

allow_call_time_pass_reference boolean
関数を呼び出すときにパラメータを強制的に参照渡しできるようにするかどうか。このメソッドは非推奨であり、PHP/Zend の将来のバージョンではサポートされなくなる可能性があります。どのパラメータを参照によって渡す必要があるかを関数定義で指定することをお勧めします。将来のバージョンでもスクリプトが確実に実行されるように、このオプションをオフにしてスクリプトが適切に実行されることを確認することをお勧めします (この機能を使用するたびに警告が表示され、パラメーターは参照ではなく値で渡されます)。 。

関数を呼び出すときにパラメーターを参照によって渡すことは、コードのクリーンさに影響するため、お勧めできません。関数のパラメーターが参照渡しとして宣言されていない場合、関数は文書化されていないメソッドを通じてパラメーターを変更できます。副作用を回避するには、関数が宣言されるときにのみ、パラメーターを参照によって渡す必要があることを指定することをお勧めします。

引用された説明を参照してください。

expose_php boolean
サーバーにインストールされている PHP を公開するかどうかを決定します (たとえば、Web サーバーのヘッダーに署名を追加することによって)。セキュリティ上の脅威はなく、PHP がサーバーにインストールされているかどうかをクライアントに知らせるだけです。

zend.ze1_compatibility_mode boolean
Zend Engine 1 (PHP 4) 互換モードを有効にします。これは、オブジェクトのコピー、構築、比較に影響します。

「PHP 4 から PHP 5 への移植」を参照してください。

リソースの制限
表 G-5. リソースの制限

名前 デフォルト値 変更可能範囲 更新レコード
memory_limit "8M" PHP_INI_ALL

以下は、構成オプションの簡単な説明です。

memory_limit integer
このコマンドは、スクリプトが適用できるメモリの最大バイト数を設定します。これは、不適切に書かれたスクリプトがサーバー上の使用可能なメモリを使い果たすことを防ぐのに役立ちます。このディレクティブを使用するには、コンパイル時に有効にする必要があります。したがって、configure 行には --enable-memory-limit を含める必要があります。メモリ制限が必要ない場合は、-1 に設定する必要があります。

4.3.2 以降、memory_limit が有効になっている場合、PHP 関数のmemory_get_usage() が使用できるようになりました。

整数型を使用する場合、その値はバイト単位で測定されます。簡略化された表記も使用できます。手順については、この FAQ を参照してください。

「max_execution_time」も参照してください。

データ処理
表 G-6. データ処理構成オプション

名前 デフォルト値 変更可能範囲 更新レコード
track_vars "On" PHP_INI_??
arg_separator.output "&" PHP_INI_ALL PHP 4.0.5 から利用可能です。
arg_separator.input "&" PHP_INI_PERDIR PHP 4.0.5 以降で利用可能です。
variables_order "EGPCS" PHP_INI_ALL
auto_globals_jit "1" PHP_INI_PERDIR PHP 5.0.0 以降で利用可能です。
register_globals "0" PHP_INI_PERDIR は、PHP register_argc_argv "1" PHP_INI_PERDIR は、PHP register_long_arrays "1" PHP_INI_PERDIR PHP 5.0.0 以降で利用可能です。
post_max_size "8M" PHP_INI_PERDIR は、PHP gpc_order "GPC" PHP_INI_ALL
auto_prepend_file NULL PHP auto_append_file NULL PHP_INI_PERDIR は、PHP default_mimetype "text/html" PHP_INI_ALL
default_charset "" PHP_INI_ALL
always_populate_raw_post_data "0" PHP allow_webdav_methods "0" PHP_INI_PERDIR

以下は、構成オプションの簡単な説明です。

track_vars boolean
有効にすると、環境変数、GET、POST、Cookie、サーバー変数がそれぞれグローバル連想配列で見つかります: $_ENV、$_GET、$_POST、$_COOKIE、$_SERVER。

PHP 4.0.3 では、track_vars は常にオンになっていることに注意してください。

arg_separator.output string
PHP によって生成された URL 内のパラメータを区切るための区切り文字。

arg_separator.input string
URL を変数に解析するために PHP によって使用される区切り文字のリスト。

注: このコマンドの各文字は区切り文字として扱われます。

variables_order string
EGPCS (環境、GET、POST、Cookie、サーバー) 変数が解析される順序を設定します。デフォルト設定は「EGPCS」です。たとえば、これを「GP」に設定すると、PHP は環境変数、Cookie、サーバー変数を完全に無視し、POST メソッド内の同じ名前の変数を GET メソッドの変数で上書きします。

「register_globals」を参照してください。

auto_globals_jit boolean
有効にすると、SERVER 変数と ENV 変数は、スクリプトの実行が開始されるまで待機するのではなく、最初の使用直後 (ジャスト イン タイム) に作成されます。これらの変数がスクリプトで使用されていない場合、この変数を有効にするとサーバーのパフォーマンスが向上します。

このオプションを有効にするには、PHP 構成オプション register_globals、 register_long_arrays、および register_argc_argv を無効にする必要があります。

register_globals boolean
EGPCS (環境、GET、POST、Cookie、サーバー) 変数をグローバル変数として登録するかどうかを決定します。

PHP 4.2.0 以降、このオプションはデフォルトでオフになっています。

関連情報については、「セキュリティ」の章の「register_globals の使用」を参照してください。

register_globals は実行時 (ini_set()) で設定できないことに注意してください。ただし、上で述べたように、ホストが許可している場合は .htaccess で使用できます。 .htaccess プロジェクトの例: php_flag register_globals off。

注: register_globals は、variables_order オプションの影響を受けます。

register_argc_argv boolean
PHP が argv および argc 変数を定義するかどうかを決定します (GET 情報が含まれる場合があります)。

コマンドラインメソッドを参照してください。さらに、このオプションは PHP 4.0.0 以降で利用可能で、それ以前は常に「オン」でした。

register_long_arrays boolean
PHP が $HTTP_*_VARS などの廃止された事前定義変数を登録するかどうかを設定します。 On (デフォルト) の場合、$HTTP_GET_VARS などの PHP 変数が登録されます。使用しない場合は、パフォーマンス上の理由から、このオプションをオフにして、代わりに $_GET などのスーパーグローバル配列を使用することをお勧めします。

このディレクティブは PHP 5.0.0 以降で利用可能です。

post_max_size integer
POST データに許可される最大サイズを設定します。この設定はファイルのアップロードにも影響します。大きなファイルをアップロードするには、この値が Upload_max_filesize より大きい必要があります。

設定スクリプトでメモリ制限が有効になっている場合、memory_limit もファイルのアップロードに影響します。一般に、memory_limit は post_max_size より大きくなければなりません。

整数型を使用する場合、その値はバイト単位で測定されます。簡略化された表記も使用できます。手順については、この FAQ を参照してください。

POST データのサイズが post_max_size より大きい場合、$_POST および $_FILES スーパーグローバルは空になります。これはさまざまな方法で実証できます。たとえば、$_GET 変数をスクリプトに渡してデータを処理する (つまり、

)、$_GET[' かどうかを確認します。処理済み』]が設定されます。

gpc_order string
GET/POST/COOKIE 変数の解析順序を設定します。デフォルトは「GPC」です。たとえば、これを「GP」に設定すると、PHP は Cookie 変数を完全に無視し、同じ名前の POST メソッドの変数を GET メソッドの変数で上書きします。

注: このオプションは PHP 4 では使用できません。これを variables_order に置き換えます。

auto_prepend_file string
メイン ファイルの前に自動的に解析されるファイル名を指定します。ファイルは include() 関数が呼び出されたかのようにインクルードされるため、include_path が使用されます。

特別な値 none は、自動接頭辞の付加を無効にします。

auto_append_file string
メイン ファイルの後に自動的に解析されるファイル名を指定します。ファイルは include() 関数が呼び出されたかのようにインクルードされるため、include_path が使用されます。

特別な値 none は、自動サフィックスを無効にします。

注: スクリプトが exit() によって終了された場合、自動サフィックスは発生しません。

default_mimetype string
default_charset string
4.0b4 以降、PHP はデフォルトで常に HTTP ヘッダー Content-type: の文字エンコーディングを出力します。文字セットの送信を無効にするには、このオプションを空に設定します。

always_populate_raw_post_data boolean
生の POST データを含む $HTTP_RAW_POST_DATA 変数を常に生成します。それ以外の場合、この変数は、認識できない MIME タイプのデータが検出された場合にのみ生成されます。ただし、生の POST データにアクセスするより良い方法は、php://input です。 $HTTP_RAW_POST_DATA は、enctype="multipart/form-data" フォーム データでは使用できません。

allow_webdav_methods boolean
PHP スクリプトでの WebDAV HTTP リクエスト (PROPFIND、PROPPATCH、MOVE、COPY など) の処理を​​許可します。このオプションは PHP 4.3.2 以降存在しません。これらのリクエストの POST データを取得したい場合は、always_populate_raw_post_data も設定する必要があります。

magic_quotes_gpc、magic-quotes-runtime、magic_quotes_sybase を参照してください。

パスとディレクトリ
表 G-7. パスとディレクトリの構成オプション

名前のデフォルト値変更可能範囲更新レコード
include_path ".;/path/to/php/pear" PHP_INI_ALL
doc_root NULL PHP_INI_SYSTEM
user_dir NULL PHP_INI_SYSTEM
extension_dir "/path/to/php " PHP_INI_SYSTEM
cgi.fix_pathinfo "1" PHP_INI_ALL
cgi.force_redirect "1" PHP_INI_ALL
cgi.redirect_status_env NULL PHP_INI_ALL
fastcgi.impersonate "0" PHP_INI_ALL
cgi.rfc2616 _headers "0" PHP_INI_ALL

以下は、構成オプションの簡単な説明です。

include_path string
require()、include()、および fopen_with_path() 関数がファイルを検索するために使用するディレクトリのセットを指定します。形式はシステムの PATH 環境変数に似ています。UNIX ではコロン、Windows ではセミコロンで区切られたディレクトリのリストです。

例 G-1: Unix include_path

include_path=".:/php/includes"


例 G-2. Windows include_path

include_path=".;c:/php/includes"


インクルード パスで . を使用すると、現在のディレクトリを表す相対パスが許可されます。

doc_root string
サーバー上の PHP のルート ディレクトリ。空でない場合にのみ使用されます。 PHP がセーフ モードで構成されている場合、このディレクトリの外にあるファイルは解析されません。 FORCE_REDIRECT を指定せずに PHP がコンパイルされ、PHP が任意の Web サーバー (IIS を除く) 上で CGI モードで実行されている場合は、doc_root を設定する必要があります。別の方法は、以下の cgi.force_redirect 構成オプションを使用することです。

user_dir string
ユーザー ディレクトリの下にある PHP ファイルのベース ディレクトリ名 (public_html など) を使用します。

extension_dir string
動的にリンクされた拡張ライブラリを検索するために PHP が使用するディレクトリ。 「enable_dl」と「dl()」を参照してください。

拡張文字列
PHP の起動時にロードされるダイナミック リンク拡張ライブラリ。

cgi.fix_pathinfo boolean
CGI に真の PATH_INFO/PATH_TRANSLATED サポートを提供します。以前の PHP の動作は、PATH_INFO に関係なく、PATH_TRANSLATED を SCRIPT_FILENAME に設定していました。 PATH_INFO の詳細については、CGI 仕様を参照してください。この値を 1 に設定すると、PHP CGI は仕様に準拠するようにパスを修正します。これを 0 に設定すると、PHP は以前と同じように動作します。デフォルトはゼロです。ユーザーは、PATH_TRANSLATED の代わりに SCRIPT_FILENAME を使用するようにスクリプトを修正する必要があります。

cgi.force_redirect boolean
Cgi.force_redirect は、ほとんどの Web サーバーで PHP を CGI として実行するときにセキュリティを提供するために必要です。 PHP のデフォルトはオンです。自己責任でオフにすることができます。

注: Windows ユーザー: これは IIS では安全に無効にすることができ、実際には必須です。 OmniHTTPD または Xitami で使用する場合もオフにする必要があります。

cgi.redirect_status_env string
cgi.force_redirect がオンになっており、Apache または Netscape (iPlanet) Web サーバーで実行されていない場合は、環境変数名を設定する必要がある場合があり、PHP はそれを知るために環境変数名を検索します。続行できます。

注: この変数を設定すると、セキュリティ上の問題が発生する可能性があります。まず、何をしているのかを理解しておく必要があります。

fastcgi.impersonate string
IIS (WINNT ベースのオペレーティング システム上) の FastCGI は、クライアント セキュリティ トークンを偽装する機能をサポートしています。これにより、IIS はランタイムのベースとなる要求のセキュリティ コンテキストを定義できるようになります。この機能は、Apache (2002/03/17) の mod_fastcgi ではサポートされていません。 IIS で実行している場合は 1 に設定します。デフォルトは 0 です。

cgi.rfc2616_headers int
PHP が HTTP 応答コードを送信するときに使用するヘッダーを指定します。 0 に設定すると、PHP は Apache およびその他の Web サーバーでサポートされる Status: ヘッダーを送信します。このオプションが 1 に設定されている場合、PHP は RFC 2616 準拠のヘッダーを送信します。何をしているのかわからない場合は、値を 0 のままにしておきます。

ファイル アップロード
フォーム G-8. ファイル アップロード構成オプション

名前 デフォルト値 変更可能範囲 更新レコード
file_uploads "1" PHP upload_tmp_dir NULL PHP_INI_SYSTEM
upload_max_filesize "2M" PHP_INI_PERDIR は、PHP

以下は、構成オプションの簡単な説明です。

file_uploads boolean
HTTP ファイルのアップロードが許可されるかどうか。 Upload_max_filesize、upload_tmp_dir、および post_max_size ディレクティブを参照してください。

整数型を使用する場合、その値はバイト単位で測定されます。簡略化された表記も使用できます。手順については、この FAQ を参照してください。

upload_tmp_dir string
ファイルのアップロード時にファイルが保存される一時ディレクトリ。 PHP プロセス所有者ユーザーが書き込み可能なディレクトリである必要があります。指定しない場合、PHP はシステムのデフォルトを使用します。

upload_max_filesize integer
アップロードされるファイルの最大サイズ。

整数型を使用する場合、その値はバイト単位で測定されます。簡略化された表記も使用できます。手順については、この FAQ を参照してください。

共通 SQL
表 G-9. 共通 SQL 構成オプション

名前 デフォルト値 変更可能範囲 更新レコード
sql.safe_mode "0" PHP_INI_SYSTEM

以下は、構成オプションの簡単な説明です。

sql.safe_mode boolean
デバッガ設定オプション

デフォルトのデバッガを実装しているのは PHP 3 のみです。詳細については、付録 E を参照してください。

debugger.host string
デバッガーが使用するホストの DNS 名または IP アドレス。

debugger.port string
デバッガーによって使用されるポート番号。

debugger.enabled boolean
デバッガーを有効にするかどうか。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
セッションを保存するためにデータベースを使用することの利点は何ですか?セッションを保存するためにデータベースを使用することの利点は何ですか?Apr 24, 2025 am 12:16 AM

データベースストレージセッションを使用することの主な利点には、持続性、スケーラビリティ、セキュリティが含まれます。 1。永続性:サーバーが再起動しても、セッションデータは変更されないままになります。 2。スケーラビリティ:分散システムに適用され、セッションデータが複数のサーバー間で同期されるようにします。 3。セキュリティ:データベースは、機密情報を保護するための暗号化されたストレージを提供します。

PHPでカスタムセッション処理をどのように実装しますか?PHPでカスタムセッション処理をどのように実装しますか?Apr 24, 2025 am 12:16 AM

PHPでのカスタムセッション処理の実装は、SessionHandlerInterfaceインターフェイスを実装することで実行できます。具体的な手順には、次のものが含まれます。1)CussentsessionHandlerなどのSessionHandlerInterfaceを実装するクラスの作成。 2)セッションデータのライフサイクルとストレージ方法を定義するためのインターフェイス(オープン、クローズ、読み取り、書き込み、破壊、GCなど)の書き換え方法。 3)PHPスクリプトでカスタムセッションプロセッサを登録し、セッションを開始します。これにより、データをMySQLやRedisなどのメディアに保存して、パフォーマンス、セキュリティ、スケーラビリティを改善できます。

セッションIDとは何ですか?セッションIDとは何ですか?Apr 24, 2025 am 12:13 AM

SessionIDは、ユーザーセッションのステータスを追跡するためにWebアプリケーションで使用されるメカニズムです。 1.ユーザーとサーバー間の複数のインタラクション中にユーザーのID情報を維持するために使用されるランダムに生成された文字列です。 2。サーバーは、ユーザーの複数のリクエストでこれらの要求を識別および関連付けるのに役立つCookieまたはURLパラメーターを介してクライアントに生成および送信します。 3.生成は通常、ランダムアルゴリズムを使用して、一意性と予測不可能性を確保します。 4.実際の開発では、Redisなどのメモリ内データベースを使用してセッションデータを保存してパフォーマンスとセキュリティを改善できます。

ステートレス環境(APIなど)でセッションをどのように処理しますか?ステートレス環境(APIなど)でセッションをどのように処理しますか?Apr 24, 2025 am 12:12 AM

APIなどのステートレス環境でのセッションの管理は、JWTまたはCookieを使用して達成できます。 1。JWTは、無国籍とスケーラビリティに適していますが、ビッグデータに関してはサイズが大きいです。 2.cookiesはより伝統的で実装が簡単ですが、セキュリティを確保するために慎重に構成する必要があります。

セッションに関連するクロスサイトスクリプティング(XSS)攻撃からどのように保護できますか?セッションに関連するクロスサイトスクリプティング(XSS)攻撃からどのように保護できますか?Apr 23, 2025 am 12:16 AM

セッション関連のXSS攻撃からアプリケーションを保護するには、次の測定が必要です。1。セッションCookieを保護するためにHTTPonlyとセキュアフラグを設定します。 2。すべてのユーザー入力のエクスポートコード。 3.コンテンツセキュリティポリシー(CSP)を実装して、スクリプトソースを制限します。これらのポリシーを通じて、セッション関連のXSS攻撃を効果的に保護し、ユーザーデータを確保できます。

PHPセッションのパフォーマンスを最適化するにはどうすればよいですか?PHPセッションのパフォーマンスを最適化するにはどうすればよいですか?Apr 23, 2025 am 12:13 AM

PHPセッションのパフォーマンスを最適化する方法は次のとおりです。1。遅延セッション開始、2。データベースを使用してセッションを保存します。これらの戦略は、高い並行性環境でのアプリケーションの効率を大幅に改善できます。

session.gc_maxlifetime構成設定とは何ですか?session.gc_maxlifetime構成設定とは何ですか?Apr 23, 2025 am 12:10 AM

thesession.gc_maxlifettinginttinginphpdethinesthelifsessessiondata、setinseconds.1)it'sconfiguredinphp.iniorviaini_set()。 2)AbalanceSneededToAvoidPerformanceIssues andunexpectedLogouts.3)php'sgarbagecollectionisisprobabilistic、影響を受けたBygc_probabi

PHPでセッション名をどのように構成しますか?PHPでセッション名をどのように構成しますか?Apr 23, 2025 am 12:08 AM

PHPでは、session_name()関数を使用してセッション名を構成できます。特定の手順は次のとおりです。1。session_name()関数を使用して、session_name( "my_session")などのセッション名を設定します。 2。セッション名を設定した後、session_start()を呼び出してセッションを開始します。セッション名の構成は、複数のアプリケーション間のセッションデータの競合を回避し、セキュリティを強化することができますが、セッション名の一意性、セキュリティ、長さ、設定タイミングに注意してください。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)