nginx ウェブサイト サービスのアンチホットリンクを設定する方法 (推奨)

nginx ウェブサイト サービスのアンチホットリンクを設定する方法 (推奨)

1. ホットリンクの原則

1.1 Webページの準備

Web ソース ホスト (192.168.153.20) の構成

/usr/local/nginx/html をコピーします
preview.jpg画像ファイルを/usr/local/nginx/htmlディレクトリvim index.htmlに転送します。
......
<img src="preview.jpg"/>
</本文>
</html>

echo "192.168.153.20 www.wt.com" >> /etc/hosts
echo "192.168.153.10 www.abc.com" >> /etc/hosts 

ここに画像の説明を挿入
ここに画像の説明を挿入

ホットリンクウェブサイトホスト(192.168.153.20)の構成

ソースホストのnginxサービスと区別するために、ホットリンクホストは一般的なwedサービスyum install -y httpdを使用することができます。

vim /var/www/html/index.html
<html><body><h1>こんにちは! </h1>
<img src="http://www.wt.com/preview.jpg"/>     
</body></html>

echo "192.168.153.20 www.wt.com" >> /etc/hosts
echo "192.168.153.10 www.abc.com" >> /etc/hosts

systemctl で httpd を再起動します。 

ここに画像の説明を挿入

1.2 ブラウザアクセスの検証

ここに画像の説明を挿入
ここに画像の説明を挿入

2. アンチホットリンクを設定する

2.1 設定ファイルを変更する

vim /usr/local/nginx/conf/nginx.conf
http {
......
	サーバー{
	......
		場所 ~* \.(jip|gif|swf)$ {
			有効なリファラー *.wt.com wt.com;
			もし $invalid_referer であれば
				書き換え^/ http://www.wt.com/error.png;
				#403 を返します。
			}
		}
	......
	}
}

~* .(jpg|gif|swf)$ : この正規表現は、大文字と小文字を区別せず、.jpg、.gif、または .swf で終わるファイルと一致します。
valid_referers: 画像を正常に使用できるように信頼できる Web サイトを設定します。
次の URL またはドメイン名: リファラーに該当する文字列を含む URL。
If 文: リンクのソースドメイン名が valid_referers のリストになく、$invalid_referer が 1 の場合、次の操作、つまり書き換えまたは 403 ページに戻る操作が実行されます。


ここに画像の説明を挿入

error.png画像ファイルを/usr/local/nginx/htmlディレクトリに転送します。

ここに画像の説明を挿入

2.2 ブラウザアクセスの検証

ここに画像の説明を挿入

nginx ウェブサイト サービスのアンチホットリンクの設定方法に関するこの記事はこれで終わりです。nginx ウェブサイト サービスのアンチホットリンクに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Nginx でアンチホットリンクを設定するための手順を完了する
  • Nginx のアンチホットリンクを設定する方法
  • Nginx アンチホットリンクは、UA (アンチスパイダー)に基づいて悪意のあるユーザーエージェントリクエストをブロックします。
  • Nginx サーバーでのホットリンク防止方法の紹介
  • Nginx イメージホットリンク保護設定例
  • Nginx アンチホットリンク設定方法
  • Nginx でホットリンクを防ぐ 3 つの方法

<<:  Vue ページ スタック マネージャーの詳細

>>:  HTML チュートリアル: よく使われる HTML タグのコレクション (5)

推薦する

ウェブページ作成によく使われる英語フォント

アリアルArial は、多くの Microsoft アプリケーションとともに配布されるサンセリフ T...

CSSとJSでロマンチックな流星群アニメーションを実現

1. レンダリング 2. ソースコードhtml < 本文 > < div クラス ...

Nginx でアクセス頻度、ダウンロード速度、同時接続数を制限する方法

1. アクセス頻度、同時接続、ダウンロード速度を制限するために使用されるモジュールと命令の概要ngx...

MySQL インデックスの長さ制限の原理の分析

この記事は主に、MySQL インデックスの長さ制限の原理の分析を紹介します。サンプル コードを通じて...

Ubuntu 20.04でAliソースを変更する方法

なお、この記事では、単に 20.04 ソースに変更する方法を説明するのではなく、20.04 に基づい...

HTML でフロートをクリアする 2 つの方法

1. クリアフローティング法1前の親要素の高さを設定します。注: エンタープライズ開発では、可能であ...

Linux 上での MySQL データベースのインストールと Java プロジェクトの構成に関する詳細なグラフィック説明

1. MySQLデータベースをインストールする① ダウンロードして解凍し、/opt/softディレク...

MySql 5.7.21 無料インストール バージョンの構成方法 (Win10 の場合)

1.インストールしたい場所に解凍し、my.iniファイルを作成します。 my.iniの内容は次のと...

Vite2とVue3を使用したウェブサイトの国際化を実現するプロセス全体

目次序文vue-i18nをインストールするロケールの設定getLangs.js の実装i18nインス...

CSS ワールド - コード実践: 画像の Alt 情報の表示

ただし、デフォルトの src を持つ <img> 要素を使用してスクロール読み込み効果を...

Linux 7.7 でスワップ パーティション SWAP を設定する方法

Linux システムの Swap パーティション、つまり swap パーティションは、一般に仮想メモ...

Vue でデータが変更された後にビューを同期的に更新する方法

序文少し前に、興味深い問題を目にしました。Vue のデータが変更された後に、ビューを同期的に更新する...

MySQL ストアド プロシージャで if ステートメントを使用する詳細な例

この記事では、例を使用して、MySQL ストアド プロシージャでの if ステートメントの使用方法を...

Mysqlのprepare前処理の具体的な使用法

目次1. 前処理2. 前処理塗布方法A. 例: B. 実行計画の変更を追跡するための前処理C. スト...