- ベストアンサー
見られたくないファイル
中身を見られたくないファイルを保護する方法として、 1.DocumentRootより上のディレクトリに置く と、 2.DocumentRoot以下に置き.htaccessで保護する とではどちらの方法がおすすめでしょうか? 前にも似た質問をさせていただいたのですが… よければ今回も宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
がると申します。 私は1番の「ディレクトリ外に置く」ですね。
その他の回答 (3)
- yambejp
- ベストアンサー率51% (3827/7415)
私の場合以下のようにしています。 //common.php class db{ function accessDatabase(){ $link=mysql_connect("host","username","password"); mysql_select_db('databasename',$link); return $link; } } このようなファイルをつくっておき、こいつをincludeして、 $linkをつかいまわせば運用面では結構楽です。 セキュリティ的には微妙かなぁ・・・。 include("common.php"); db=new db; $link=$db->accessDatabase(); $sql="SELECT * FROM hoge"; $res=mysql_query($sql,$link);
お礼
再度回答ありがとうございます。 なるほど…確かにこうしておくと便利ですね。 サイト内のいたるところでMySQLに接続してるのでかなり重宝しそうです。 (ちゃっかりclassの使い方も勉強させていただきました) でもこの方法、セキュリティ的には微妙なんですか?
- moon_night
- ベストアンサー率32% (598/1831)
ドキュメントルートより上に置いてPHPなどから読み出せは通常見れません。 PHPやCGI内に埋め込んでも普通の設定であれば見れないでしょう。 PHPなどに埋め込んだほうが分かりやすいかもしれません。 拡張子だけPHPやらCGIやらにしても問題ないと思います。
お礼
回答ありがとうございます。 PHP内に埋め込んでも普通であれば見れないとのことで安心しました。 確かに、[ファイルのアップロードは常にドキュメントルート]な初心者な自分にとっては PHPに埋め込む方がずっとやりやすいというか手が出しやすいですね。 ドキュメントルート外に置いての利用で混乱しそうになったら、埋め込みでやろうと思います。
- yambejp
- ベストアンサー率51% (3827/7415)
サーバーにおかないのが原則です
お礼
回答ありがとうございます。 いや、確かにそうですよね。 ただ、MySQLへの接続パスワードなど含めたファイルをどうしようかなと思っていて… サーバー上に置かないわけにいかないものの対策をお聞きしたいと思いました。
お礼
ふむふむ、参考になります。 がるさん回答ありがとうございました。