PHP、Apache、サーバーの解釈について疑問があります...PHPファイルがApache + PHPサーバーからブラウザーによってロードされると、解釈され、HTMLとプレーンテキストのみが表示されることは知っていますが、方法はありますか?このファイルを解釈する代わりにダウンロードしますか? この場合、MySQL パスワードは安全ではないため、非常に安全ではありません。
これを防ぐためのセキュリティ対策はありますか、それともこのファイルをダウンロードすることは不可能ですか?
サーバーが適切にセットアップされている限り、それは起こりません。
ただし、実際のパスワードなどをすべて config.php に入れ、それを含めることをお勧めします。そうすれば、htacces を使用してそのファイルをブロックすることもできるので、サーバーが未加工のページの提供を開始した場合でも、そのファイルにはアクセスできなくなります。
.htaccessファイルを作成し、それを config.php と同じフォルダーに配置するかどうかを明確にするために、以下の情報を使用して、そのファイルが直接要求されても提供されません。このファイルに構成要素 (データベース名、ユーザー名、パスワード、ハッシュなど) を定義し、それを必要とする各ページの上部に include_once するだけで準備完了です。
<files config.php>
order allow,deny
deny from all
</files>
PHPインタープリターが何らかの理由で動作を停止しない限り、心配する必要はありません。ほとんどのサーバーは、要求されるたびにPHPファイルを解釈し、解釈されたHTMLテキストのみを提供するように設計されています。念のため、機密性の高いPHP設定ファイルを保護することができます。多くの場合、権限を変更してルートディレクトリの外に配置します。
PHP ファイルを「ダウンロード」する方法はありませんが、セキュリティを強化するために、「コア」PHP ファイルを public_html フォルダーの外に置くことができます。
誰かがファイルをダウンロードできる唯一の方法は、未加工のファイルを提供するサーバーをセットアップすることです。そのようなサーバーがセットアップされていない限り、それらにはアクセスできません。システム上の唯一のサーバー ソフトウェアが Apache であり、それが正しく構成されている場合、人々はソース コードを見ることができません。
ただし、誰かがあなたのソースを見てあなたのアプリを脆弱にする可能性がある場合は、その問題を解決する方法について考えてみてください。多くの安全なオープンソース ソフトウェアが存在します。なぜあなたのソフトウェアがオープンソースであることが問題を引き起こすのでしょうか?
適切な構成により、apache はファイルが常に解釈され、ダウンロード用に提供されないことを保証します。
障害のある更新プログラムをインストールしたり、構成を誤ったりする可能性は常にありますが、熟練した管理者と安定版リリースがあれば、そのようなケースは発生しません。