CMS に取り組んだことのある開発者は皆、LAMP 環境でのバックグラウンド ログインとファイル アップロードの 2 つは問題が発生しやすい場所であり、そのほとんどは PHP 設定の問題が原因であるため、PHP を最適化することが重要であることを知っています。 PHP を最適化するには、主に php.ini 内の関連する主要パラメータを適切に調整して設定します。パフォーマンスに大きな影響を与える php.ini 内のいくつかのパラメータを設定する方法を見てみましょう (システムは CentOS です)。 。
(1)PHP機能無効が見つかりました
disable_functions =
このオプションは、どの PHP 関数の使用を禁止するかを設定できます。PHP には非常に危険な関数がいくつかあります。これらの関数の実行が許可されている場合、脆弱性が発生したときに、これらの関数を直接実行できます。 PHP プログラムの損失は非常に深刻です。以下に、機能を無効にするための推奨設定を示します。
disable_functions = phpinfo,passthru,exec,system,popen,chroot,escapeshellcmd,escapeshellarg,shell_exec,proc_open,proc_get_status注: サーバーに CentOS システム状態検出用の PHP プログラムが含まれている場合は、shell_exec、proc_open、proc_get_status およびその他の機能を無効にしないでください。
(2) PHPスクリプトの実行時間が判明しました
max_execution_time = 30
このオプションは、PHP プログラムの最大実行時間を設定します。PHP スクリプトが要求され、PHP スクリプトが max_execution_time 以内に実行できなかった場合、PHP は実行を続行せず、クライアントに直接タイムアウト エラーを返します。特別な必要がない場合は、このオプションをデフォルト設定の 30 秒のままにしておき、PHP スクリプトの実行時間が本当に長い場合は、時間設定を適切に増やすことができます。
(3) PHPスクリプト処理のメモリ使用量が判明しました
memory_limit = 8M
このオプションは、PHP スクリプト処理が占有できる最大メモリを指定します。デフォルトは 8MB です。サーバーのメモリが 1GB を超える場合、このオプションを 12MB に設定すると、PHP スクリプトの処理効率が向上します。
(4) PHPグローバル関数宣言が見つかりました
register_globals = オフ
インターネット上の PHP 設定に関する多くの記事では、このオプションをオンに設定することを推奨しています。実際、これは非常に危険な設定方法であり、重大なセキュリティ上の問題を引き起こす可能性があります。特別な必要がない場合は、デフォルト設定を維持することを強くお勧めします!
(5) PHPアップロードファイルサイズ制限が見つかりました
upload_max_filesize = 2M
このオプションは、PHP で許可される最大アップロード ファイル サイズを設定します。デフォルトは 2MB です。この設定は、実際のアプリケーションの要件に応じて適切に増やすことができます。
(6)セッション記憶媒体が見つかりました
セッション.save_path
PHP プログラムがセッション ダイアログを使用する場合、セッションの保存場所を /dev/shm に設定できます。 /dev/shm は、Linux システムの独自の TMPFS ファイル システムであり、主な保存方法としてメモリを使用します。 DISKSWAP は追加として使用でき、CentOS システムに付属している機能モジュールなので、別途設定する必要がないため、RAMDISK よりも優れています。考えてみてください。ディスク IO 操作からメモリ操作までどれくらい速くなりますか? サーバーの再起動後、/dev/shm に保存されているデータはすべて失われることに注意してください。しかし、これはセッションにとっては重要ではありません。このようにして、CentOS システム上での PHP 最適化の手順が完了しました。