• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ダウンロード制限をかける方法)

ダウンロード制限の設定方法

このQ&Aのポイント
  • 仕事で簡単なwebサイトを管理しているのですが、ダウンロード制限を設ける方法を教えて頂けますでしょうか。
  • 具体的に言いますと、例えばpdfファイル等のダウンロードリンクがあるとします。これを訪問者がクリックするわけですが、「一人一回までしかダウンロードできない」という制限方法です。
  • 全部で最大10ダウンロード→それを超えたら不可、といった内容ですと、オンラインストレージのサービスで結構見つかるのですが、それだと一人が10回ダウンロードしたら終わってしまいます。

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

  • ベストアンサー
  • asciiz
  • ベストアンサー率70% (6803/9674)
回答No.1

正直、よい方法を思いつきません。 不特定多数にダウンロードさせるなら、最初の人と次にアクセスした人、たとえIPが違っても同一人物である可能性があるわけで、それを判定して弾くためには、ダウンロード時に何かウイルス的な物でも仕込み、ダウンロードPC側で止めないととても制御できません……でも勝手に何かインストールしてしまうのは、悪さをしないプログラムであっても破壊行為の一種です。 また逆に、ネットカフェからのアクセスや、同一家庭内の親子PCでのアクセスなど、IPが同じだったとしても別人であったりするわけで、やはりこれもサーバーから見たら区別できません。 ダウンロードさせるメンバーが決まっているなら、例えば人数分ダウンロードキーを生成して、1キーにつき3回までダウンロード可能、といった手法が取れるかもしれません。 1キー1回でもいいですが、ちょっとしたミスでキーの再生成を要求されたりする手間を考えると、2・3回は可能にしておく方が良いかと。 もう少しすすめると、ダウンロードのためにメールアドレスを入力→メアドあてに1回だけ使えるダウンロードキーを送付→ダウンロードさせる、以前使われたアドレスではキーの再発行を受け付けない、というのが考えられます。 でもメアドは無料サービスやspam対策を応用していくらでも作れますし、どれだけの期間メアド保存するのか、しかもメアドは個人情報になってしまいますから、数によっては個人情報取扱業者と見なされてしまう可能性もあります。 (ハッシュ化して生メアドを持たないようにすれば良いかもしれません。別のアドレスでも同じハッシュ値になってしまう可能性はありますが。) 思いつきで書いてみましたが、その様なサービスをしているところは知らないので、上記アイデアをプログラミングして作ることになるでしょう。 単純なアップローダ(CGIやPHP等)はいくつか公開されていますから、それを改造していくような感じで…。

noname#146409
質問者

お礼

返信遅くなってしまい申し訳ないです。 有難うございました。 しかしながら初心者には難しそうですね...。参考にさせていただきます。

関連するQ&A