PHP-FPM パフォーマンスの最適化: Web サイトのセキュリティと安定性を向上させるための対策
インターネットの急速な発展に伴い、Web サイトのパフォーマンスの最適化がますます重要になってきています。 PHP 開発では、PHP-FPM (FastCGI Process Manager) がパフォーマンスと Web サイトの安定性を向上させるために使用される一般的な PHP ソリューションです。ただし、PHP-FPM をインストールして設定するだけでは十分ではなく、パフォーマンスをさらに最適化し、Web サイトのセキュリティと安定性を向上させるためには、いくつかの対策を講じる必要があります。この記事では、PHP-FPM のパフォーマンス最適化をより適切に実装するのに役立つ具体的なコード例をいくつか紹介します。
まず、PHP-FPM プロセス プールを適切に構成する必要があります。プロセス数やリクエストの最大数などのパラメータを調整することで、PHP-FPM は Web サイトのニーズをより適切に満たすことができます。以下は、PHP-FPM プロセス プール構成の例です:
[www] user = www-data group = www-data listen = /var/run/php/php7.4-fpm.sock listen.owner = www-data listen.group = www-data pm = dynamic pm.max_children = 20 pm.start_servers = 5 pm.min_spare_servers = 2 pm.max_spare_servers = 8 pm.process_idle_timeout = 10s pm.max_requests = 500
この例では、動的プロセス管理モード (pm = 動的) を使用し、子プロセスの最大数を 20 (pm.max_children) に設定します。 、子プロセスの初期数は 5 (pm.start_servers)、アイドル状態の子プロセスの最小数は 2 (pm.min_spare_servers)、アイドル状態の子プロセスの最大数は 8 (pm.max_spare_servers)、アイドル プロセスのタイムアウトは 10 秒 (pm.process_idle_timeout )、リクエストの最大数は 500 (pm.max_requests) です。
実際の Web サイトの負荷に応じて、これらのパラメータは必要に応じて調整できます。 PHP-FPM プロセス プールを適切に構成すると、パフォーマンスとリソース消費のバランスが良くなります。
OPcache は、PHP スクリプトのキャッシュと実行パフォーマンスの向上に使用される PHP の組み込み拡張機能です。 OPcache を有効にすると、PHP スクリプトのコンパイル時間が大幅に短縮され、サーバーの負荷が軽減されます。次に、OPcache 構成の例を示します。
[opcache] zend_extension=opcache.so opcache.enable=1 opcache.enable_cli=1 opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.validate_timestamps=0 opcache.revalidate_freq=60
この例では、OPcache を有効にし (opcache.enable=1)、メモリ消費量を 128MB (opcache.memory_consumption) に設定し、インターンされた文字列バッファは 8MB ( opcache.interned_strings_buffer)、キャッシュされるファイルの最大数は 4000 (opcache.max_accelerated_files)、スクリプトのタイムスタンプ検証はキャンセルされ (opcache.validate_timestamps=0)、再検証頻度は 60 秒に設定されます (opcache.revalidate_freq)。
OPcache を使用すると、PHP スクリプトの実行パフォーマンスが大幅に向上し、サーバーの負荷が軽減されます。
Web サイトのセキュリティを向上させるには、いくつかの PHP セキュリティ設定もオンにする必要があります。以下は、PHP セキュリティ設定の一般的な例です。
display_errors = Off allow_url_fopen = Off expose_php = Off open_basedir = /var/www/html:/tmp disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
この例では、エラー表示をオフにし (display_errors = Off)、リモート ファイル操作を無効にし (allow_url_fopen = Off)、PHP のバージョン情報を非表示にします (expose_php) = Off)、PHP のディレクトリベースのアクセス制限を設定し (open_basedir = /var/www/html:/tmp)、いくつかの危険な PHP 関数を無効にします (disable_functions)。
これらのセキュリティ設定を有効にすることで、Web サイト攻撃のリスクを効果的に軽減し、Web サイトのセキュリティを向上させることができます。
概要:
PHP-FPM プロセス プールを適切に構成し、OPcache を使用し、PHP セキュリティ設定を有効にすることで、PHP-FPM のパフォーマンスをさらに最適化し、セキュリティと安定性を向上させることができます。ウェブサイトの。上記は単なる例であり、具体的な構成は実際の状況に応じて調整する必要があります。継続的な最適化と改善を通じて、PHP-FPM のパフォーマンスを向上させ、ユーザーにより良い Web サイト エクスペリエンスを提供できます。
以上がPHP-FPM パフォーマンスの最適化: Web サイトのセキュリティと安定性を向上させるための対策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。