web-dev-qa-db-ja.com

ホットリンクを防ぐにはどうすればよいですか? (nginx)

Nginxを使用していますが、サーバーconfにアクセスできません。

.htaccessアナログである可能性がありますか?..

1
NARKOZ

サーバー構成にアクセスしないと、設定を変更できません。 nginxにはApachehttpdの.htaccessに相当するものはありません。

4
joschi
location ~* (\.jpg|\.png|\.gif|\.jpeg)$ {
 valid_referers blocked www.domain.com domain.com;
 if ($invalid_referer) {
    return 403;
 }
  root   /srv/www/domain.com/public_html;
}
7
user29686

Webサーバーにアクセスできる場合に備えて:

location ~* (\.jpg|\.png|\.gif|\.jpeg|\.png)$ {
 valid_referers none blocked www.example.com example.com;
 if ($invalid_referer) {
    return 403;
 }
}
2
alfish

joschiは正しいです:nginxは、編集できない単一の構成ファイルによって駆動されます。唯一の可能性は、ホットリンクには「403 Access Denied」、通常のリンクには「301MovedPermanently」というリダイレクタスクリプトを使用することです。

0
kolypto

1つの解決策は、すべてのページとコンテンツを動的に生成し、毎回異なるURLを使用して、しばらくすると期限切れになることです。それはホットリンクを不可能にします。

それが現実的でない場合は、リファラーを確認することもできます。 nginxを再構成できない場合は、ページを動的に生成するスクリプト言語で再構成する必要があります。

0
sleske