この問題の一般的な方法には、データベースのクレデンシャルを.iniファイルなどのPHP以外の構成ファイルに入れてから、PHPで読み取ることが含まれます。セキュリティを強化するには、構成ファイルをWebルートの外部に配置して、ファイルに直接移動して誰もファイルにアクセスできないようにする必要があります。
たとえば、Laravelフレームワーク(とりわけ)は/ publicディレクトリにWebルートを定義しますが、そのディレクトリの外には.env
があります。 他の設定の中でもデータベースのクレデンシャルを含むファイル。
詳細については、こちらをご覧ください:セキュリティで保護する方法PHPのデータベースパスワード?
さらに重要なのは、PHPがプレーンテキストとして提供されることを心配する必要がないことです。これが決して起こらないように、適切な開発予防策を講じてください。いくつかの出発点は次のとおりです。
- PHPがインストールされていることを確認してください!
- タグを正しく開閉するようにしてください
- ファイル拡張子が
.php
であることを確認してください.html
ではありません (この回避策 ) - また、本番コードでページにエラーが表示されていないことを確認してください( display_errors ini)