• ベストアンサー

ファイルへの直接アクセスをできないようにするには

PHPプログラミングにてサーバ上に格納されているcsvファイルへ データを書き込み、ダウンロードボタンをクリックしてダウンロードするような処理を現在作成しております。 ファイルへの書き込み、ダウンロード操作はログインされたユーザのみが行えるようにしたいのですが、URLでcsvファイル名まで直接入力するとファイルが見られてしまうことに気付きました。 U直接アクセスを防ぐにはどのようにしたらよろしいでしょうか? 何分未熟なため困っており、お知恵を拝借させて頂きたく 質問させていただきました。ご教授よろしくお願い致します。 使用している環境は下記になります。 CentOS5.2 PHP5 apache2.2 MySQL5.0

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

一番簡単なのは、公開ディレクトリの外に置くことです。 レンタルサーバーなど、環境によって公開ディレクトリの外に置けない場合は、以下の内容のファイルをCSVが置かれているディレクトリと同じディレクトリに設置し、ファイル名を「.htaccess」にしてください。 order deny,allow deny from all allow from localhost これで、Webからのアクセスはできなくなります。

he_poko
質問者

お礼

ご教授ありがとうございます。 .htaccessを設置して試してみたいと思います。 早急にご回答いただき本当にありがとうございます。 また確認次第ご報告させていただきます。

he_poko
質問者

補足

確認させていただきました。 .htaccessを設置させて頂いて直接アクセスはできなくなりましたが ダウンロードボタンをクリックしてcsvのダウンロードをしようとするとForbidden となりエラーとなってしまう症状となりました。 何か考えられる原因等ございましたらご教授お願いいたします。

その他の回答 (1)

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.2

直接アクセス出来ない=直接csvファイル名でダウンロードさせない ということなので、phpでログインチェックをしてから、csvファイルの内容をphpから出力する必要があります。

he_poko
質問者

お礼

返信が遅くなり申し訳ありません。 ご回答ありがとうございます。

関連するQ&A

専門家に質問してみよう