2

メディアファイルを含むディレクトリがあり、他のサイトに表示する必要はありません。サーバーはnginxを使用しているため、.htaccessをサポートしていません。

ファイルのホットリンク保護を有効にするにはどうすればよいですか?ありがとうございました。

4

3 に答える 3

3

最も簡単な方法は、HTTPリクエストのRefererヘッダーを確認することです。基本的に、そのヘッダーにサイトのURLが含まれていない場合、これはホットリンクである可能性があります。

これには次の問題があります。

  • リファラーヘッダーは偽造可能->ホットリンク機能
  • すべてのユーザーエージェントが必ずしもリファラーヘッダーを送信するわけではありません->正当なユーザーがコンテンツを取得できない場合があります。

また、ユーザーがサイトを閲覧しているときにCookieを設定し、ユーザーがストリーミングコンテンツにアクセスしているときにそのCookieの存在を確認することもできます。

于 2009-12-07T10:29:06.190 に答える
1

詳細は古くなっている可能性がありますが、Igorは、ここで役立つ可能性のある画像ホットリンク保護のリファラーマッピングの例を示しています:http://nginx.org/pipermail/nginx/2007-June/001082.html

リファラールートに行くことにした場合。

memcachedを使用している場合は、ストアクライアントIPアドレスを一時的に保存し、有効期限が切れていないクライアントIPがキャッシュに見つかった場合にのみストリーミングメディアを提供することもできます。クライアントIPは通常のブラウジング中にキャッシュされ、ストリーミングコンテンツを表示している人が最近サイトにアクセスしていることを確認します。

于 2009-12-29T22:06:03.813 に答える
0

私のhostgatorサイトでは、彼らはnginxをApache(nginx + apache)のプロキシとして使用していました。多分それはあなたを助けるでしょう。また、ログにアクセスできる場合、IPからのトラフィックが多い場合は調査し、サイトを指している場合は、他のWebサーバーをブロックします。PHPのfile_get_contentsは、htaccessや、IPをブロックする以外に私が知っている他の何かによって停止されることはありません。

于 2018-01-22T02:49:42.130 に答える