3

PDO について読んでいて、parse_ini_file 関数に出会いました。多くの開発者は、セキュリティ上の理由からコードでデータベース設定をハードコーディングするのではなく、この関数を使用してデータベース設定を解析することを提案しました。

あなたへの私の質問は、この追加の「セキュリティ」のために、PHP アプリケーションのロードごとにファイルの読み取りを行うことは理にかなっていますか?

このファイルの読み取りがどれほど高価なのだろうか..

コメントのphp 5.3 http://www.php.net/manual/en/class.pdo.php

4

4 に答える 4

5

それがどのように安全になっているのか、私にはよくわかりません。

たとえば、DB 設定がメインの Web ルートの外にある「config.php」ファイル内の定義に保存されている場合、.ini ファイルに保存されている場合と同じくらい安全であり、per はありません。 - ページ解析のオーバーヘッド (通常どおり構成ファイルを含める必要があること以外)。

于 2010-12-23T22:35:04.123 に答える
1

おそらくそうではありません。.ini ファイルの場合、ブラウザはそのファイルにアクセスしてダウンロードできます。少なくとも .php には、空白の画面の良識があります。

于 2010-12-24T00:37:52.417 に答える
1

PHP ファイルの設定をハード コーディングするのは良くありません。同じ PHP ファイルが送信、コピー、リポジトリに配置されるなどの理由からです。パスワードは、よりプライバシーを考慮して処理する必要があります。また、ソース ファイルがローカル コピーを上書きしなければならないのも面倒です。

プロジェクトのコードベース内の通常の PHP ファイルへの組み込みについて特に言及していることに注意してください。そのすべての外部にある PHP ファイルに構成設定を配置すると、上記のいずれも適用されません。

1 つの構成ファイルを解析するオーバーヘッドが心配な場合は、PHP をまったく使用しないでください。ただし、キャッシュされた (memcache など) コピーが見つからない場合にのみ解析することで、ファイルの読み取りを制限できます。

于 2010-12-23T22:40:01.263 に答える
1

ini ファイルに db アクセス以外のものが保存されている場合、それは理にかなっています。アプリの構成のように機能するため、ハードコードされた 3 つの変数/定数/その他を変更するために 10 個のファイルを開く必要はありません。アプリが要求されるたびにファイルを読み取るのが気に入らない場合は、php ファイルを使用してすべての構成オプションを保存し (それらをすべて 1 か所に保持するのが非常に良い)、推奨されるように ini/php を保持します。 config ファイルを web root から取り出します。

于 2010-12-23T22:45:23.087 に答える