• ベストアンサー

Webでファイルの保存を防ぐ方法。

こんにちわ, 現在簡単なWebサイトを作成しています。 その中で質問なんですが,HTMLやPHP,PERLなどで画像ファイルのダウンロードを防ぐ方法はありますか? 右クリックで保存とかも制御できたりできるのでしょうか? そのファイルを1回見ることにアクセスの回数をカウントしたいのです(ですので,ダウンロードされると正しいカウントができなくなるので防ぎたいのです)。 一応PHPとPOSTGRES,またPHPLIBを使用して,ユーザ名,パスワード,ユーザの登録時の簡単なIPアドレスとかは取っています。 (.htaccessでauto_append_fileでインクルードを使用して使っています。) 環境はAPACHEをHTMLサーバーにして,サーバスクリプトはPHPを使用しています。また,Postgresなども動作できます。 (バージョンとかは入れ替える事もできます) フリーソフトなどでその制限ができるのであれば,その方法でも結構なので,なにか,知っていらっしゃる方,よろしくおねがいします。

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

  • ベストアンサー
  • ark_kiss
  • ベストアンサー率34% (96/281)
回答No.4

お礼内の質問に関しての回答ですが・・・ そうです、.swfで埋め込むことをオススメします。 そしてFLASHなのですが、たいてのものはキャッシュが残っていない限り、 オフライン上で見る事が出来ません。 保存して見るにしても、ページ自体はHTMLなので保存できますが、 埋め込まれた中身を開くことが出来ません。 ご自分で、確認して見るのもありだと思いますので、FLASHのページを付記いたします。 ローカル保存して、開いて見てください。

参考URL:
http://www.geocities.co.jp/Milkyway-Aquarius/7075/trainman.html

その他の回答 (4)

  • kakusuke
  • ベストアンサー率36% (95/259)
回答No.5

IISの場合ですが。 (1)ファイルをスクリプトアクセスのみにする。 (2)asp等で、ファイルを表示する。 …ファイルをバイナリで読んで、  出力させるっつーことです。 という手段だと、 ダウンロードできませんでしたよ。

  • ark_kiss
  • ベストアンサー率34% (96/281)
回答No.3

結局、上のバーで「ファイル」-「名前」の保存でそのページの全ての画像も、取られてしまいますので 完全に遮蔽することは無理です。 初心者相手に通じるのであれば、右クリックを使えないようにしてみるのもありです。 下記の方々同様、FLASHとして動作させれば中級者でも通じます。 FLASHをデスクトップで保存しても、オフラインで見ることが出来ないものが多いですから・・・

yu393939
質問者

お礼

ありがとうございます。 FLASHに埋め込むということは.swfのファイルにするということですか?ただ単にフラッシュにするのみでは,ダウンロードで保存すると,見れるような感じがするのですが,なにかパスワードとか設定とかをFLASHで作成するときに使用するのでしょうか? 初心者質問でスイマセン。

  • kosa
  • ベストアンサー率25% (379/1464)
回答No.2

確実に防ぐ方法はありません! WEBで掲載している限り、ユーザはアクセスと同時にダウンロードして見ているわけですからね~ 有効的な方法としてはFLASHで画像を埋め込む方法ですね。 ただ、どんな方法でも「PrintScreen」を使われると仕方がないですね・・・ そうなるともう掲載しない方法しか残ってません

回答No.1

画像はFLASHなどで表示するようにしてみては?

関連するQ&A

  • PHPの認証方法

    こんばんわ, 現在自分のサイトをすこし変更してPostgresを使用したユーザとパスワード認証をしようと思っています。 具体的にはHTMLのuserとpasswordのフォームから入力されたものをpostgresのmemberのテーブルにあるuserとpasswordと認証させ,あっていれば,自分のサイトの中に入れるようにしたいのです。 それで,.htaccess認証ではなく,PHPLIBのなかの認証(インライン認証)を使用したいのですが, (http://www.php.gr.jp/php/phplib/documentation-3.html#ss3.9) これだとネット上をpasswordなどが平文でながれるような感じがするのですが,大丈夫なのでしょうか。 また上記のように,HTML上のフォームからサーバーのDBの認証をおこなうのには,他にどのような方法があるのでしょうか。 ちなみにPHPをHTMLの中に埋め込んで作成したいと思っています。 環境はApache,PostgreSQL,PHP4です。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • .htaccessの設定で,auto_prepend_fileを画像に対応させるには。

    今PHPでWebを作成しています。 サーバーはAPACHEで,.htaccessに <IfModule mod_php4.c> php_value include_path ".:./include php_value auto_prepend_file "login.inc" php_value auto_append_file "close.inc" </IfModule> Addtype application/x-httpd-php .html .php .inc .ihtml と書いて,.htaccess以下のディレクトリのphpや.incファイルに対して入るときはauto_prepend_fileを使用してlogin.incを呼ぶようにしています。 これに.gifを加えたいのですが,そのまま, Addtype application/x-httpd-php .html .php .inc .ihtml .gif とするとauto_prependは効くのですが,.gifファイルが文字として認識されます。 .gifに対してauto_prependを効かすにはどうすればいいのでしょうか。 よろしくお願いします。

  • APACHEで画像BASIC認証以外でアクセス制限するには?(PHPやperlで)

    こんにちは, タイトルどおり,現在webページを作成しているのですが,.gifや.pngファイルにアクセス制限をしたいのです。ただ,サーバースクリプトなどを使用してもいいので,BASIC認証以外で制限をしたいのですが,それは可能なのでしょうか。 ちなみに,OSはLinuxでサーバーはApacheを使用しています。また,PHPLIBとPostgresを使用して,ユーザ認証を行っています。 よろしくお願いします。

  • 秘密ファイルのサーバーへの保存方法で最適なのは?

     例えば、データベースを呼び出すときのユーザー名やパスワードを、そのまま外部から閲覧できるファイルに書いておくと危ないから、別のファイルにして呼び出すようにするというのは初心者用の教科書にも書いてありますよね。  例えば、PHPでいうとrequire_once()なんかで呼び出したり。  その呼び出すファイルは別のディレクトリに入れておいて、そのディレクトリにアクセス制限をかけることになると思いますが、その方法がはっきりしなくて困っています。  検索してみると、.htaccessに書いて制限するという方法がたくさん出てくるんですが、その説明の中で気になるのが「ブラウザではアクセスできなくなる」というもの。  例えば Order Deny,Allow Deny from all  と書けば、ブラウザのURL欄でファイルを指定しても見られなくなりますよね。  これだと誰もアクセスできないけど、PHPとかスクリプトからは読み出せるので、そういうファイルを保存するのによく使われてるなんて書かれてました。  でも、プログラム上から読み出せるなら、よそのサーバーからそういうプログラム書いてアクセスされたら読まれちゃうんじゃないの?と不安になります。  理想としては、同じサーバーもしくはドメイン上のHTMLやPHPなどからは読み込めて、それ以外のファイルからはブラウザだろうがプログラムだろうがアクセスできない、という形ですが、そういうことはできるもんなんでしょうか?  上記の.htaccessを使った方法で充分?  もし他にやり方があれば、ぜひご教授下さい。

  • excelファイルでのファイル保存

    PHP 4.3.9、postgresで構築しています。 http://phpspot.net/php/pgExcel%8C%60%8E%AE%82%CC%83t%83@%83C%83%8B%82%F0%8D%EC%90%AC.html 上記urlの機能を使用し作成したexcelファイルを、ダウンロードではなく サーバ上に保存したいのですが方法が分かりません・・・。 対象のphpをコマンドラインで実行し、excelファイルをサーバに保存したいのですが、 どなたか教えていただけますでしょうか。 宜しくお願い致します。

    • 締切済み
    • PHP
  • includeファイルのアクセス権について

    お世話になります。 ApacheでWeb上に公開をしているプログラムで、 そのプログラムにWeb上に公開をしていない所に あるファイルをincludeいたしました。 このincludeファイルのアクセス権のことなのですが、 基本的に、このファイルをincludeしましたWeb上の プログラムには、誰でもアクセスが出来るように 行いたいと思っております。 でも、Web上に公開をしていない所においています includeファイルには、直接、他のユーザーからは、 読み込みなどで、ファイルの中身が見られないよう に、しておきたいと思っています。 出来れば、.htaccessなどを使いまして、フォルダに 個別に設定を行えるようにしたいと思っているのですが、 よく分からずに困っています。 どのような方法で行えば、よろしいのでしょうか。 また、.htaccessを使うとしましたら、どのように、 使用をしまして設定を行えばよいのでしょうか。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • PHPファイルをHTMLファイルへ出力する方法

    理由はPHPだと重いから。 よく見る xhtml shtml 何かあるよね 『xhtml』と『shtml』 何か持ってるよね 逝きそうになりました さて、本題 HTMLファイルに <?include("./index.php");?> と書いただけではダメなの? .htaccessにあれを書いて『xhtml』って感じで?

    • ベストアンサー
    • HTML
  • PHPからPOSTGRESQLが接続できない

    すいません。プログラミング初心者です。WINDOWSXPにPHPとAPACHEとPOSTGRESをインストールしました。PHPのプログラムは、INIファイルを反映してうまく動いてくれます。PHPINIファイルでは、POSTGRESを認識しているようなのですが、PHPからPOSTGRESに接続する簡単なプログラムを作って接続しようとすると「POSTGRESのサーバーが見えない」というメッセージが帰ってきます。USERは、最高権限のpostgresでアクセスしようとしているのでデーターベースの権限の問題では、ないと思うのですが、なぜPHPからアクセスできないのでしょう? POSTGRESS単体では、データベースをつくることができます。

  • PHPファイルをHTMLの拡張子のまま表示させる

    PHPファイルのページを拡張子がHTMLのままで表示させたいのですが、 .htaccessで設定すると、ブラウザではダウンロードされてしまいます。 ファイルの配置やソースで間違っている所はありますか? フォルダ index.html .htaccess ソース(.htaccess) AddType application/x-httpd-php .htm .html サーバ さくらインターネット

    • 締切済み
    • PHP
  • ブラウザでウェブ上にアップされているファイル一覧を表示する方法

    サーバでそのディレクトリ上にあるファイルをブラウザで表示する方法を教えて下さい。 趣味でAPIを勉強しています。localhostでPHPやCGIの実験をすればいいのですが、Apacheのインストールが面倒なのでサーバで試験しています。 そこで、FTPでアップロードしたファイルをウェブブラウザで表示し、うまく動作するか確認するのですが、アドレスが非常に長い(~/api/google/googlemap/test.html等)ためURLにいちいちアドレスを打ち込むのは時間がかかります。そこでファイルを一覧で表示されたいと思っています。 ~/api/から上のファイルだけを表示させたいのですが、その方法がよく分かりません。サーバでは.htaccessやPHP・CGIが使えます。セキュリティを考え、認証しないとファイルが閲覧できない様にするのが一番良いのですが、ファイルは誰でも閲覧可能な状態でもかまいません。 よろしくお願いします。