実験環境 • 最小限のインストール済みの CentOS 7.3 仮想マシン 1. ホットリンクウェブサイトを設定する 1. nginx仮想マシンを起動し、2つのWebサイトを構成する
次のコンテンツを追加します サーバー{ 聞く 80; サーバー名 site1.test.com; ルート /var/wwwroot/site1; インデックス index.html; 位置 / { } } サーバー{ 聞く 80; サーバー名 site2.test.com; ルート /var/wwwroot/site2; インデックス index.html; 位置 / { } } 2. ホストマシンのC:\Windows\System32\drivers\etc\hostsファイルを編集します。
3. ウェブサイトのルートディレクトリを作成する mkdir /var/wwwroot /var/wwwroot に移動します mkdir サイト1 mkdir サイト2 echo -e "<h1>site1</h1><img src='1.jpg'>" >> site1/index.html echo -e "<h1>site2</h1><img src='http://site1.test.com/1.jpg'>" >> site2/index.html 4. 1.jpgを/var/wwwroot/site1ディレクトリにアップロードします。 5. nginxサービスを開始する systemctl nginx を再起動します netstat -anpt | grep nginx 6. ファイアウォールのポート80を開く 強制0を設定する ファイアウォールコマンド --zone=public --add-port=80/tcp --permanent ファイアウォール-cmd --reload 7. ホストマシンへのアクセス このサイトについて http://site2.test.com 2. site1.test.comのアンチホットリンクを設定する 1. nginx設定ファイルを編集する サーバー{ 聞く 80; サーバー名 site1.test.com; ルート /var/wwwroot/site1; インデックス index.html; 位置 / { } 場所 ~ \.(jpg|png|gif|jpeg)$ { 有効なリファラー site1.test.com; ($invalid_referer) の場合 { 403 を返します。 } } } サーバー{ 聞く 80; サーバー名 site2.test.com; ルート /var/wwwroot/site2; インデックス index.html; 位置 / { } } 2. nginxサービスを再起動する
3. ホストマシンへのアクセス ブラウザのキャッシュをクリアして、http://site1.test.com にアクセスします。 ブラウザのキャッシュをクリアして、http://site2.test.com にアクセスしてください。 アンチホットリンク設定が役割を果たしていることがわかります 3. 他のリソースを返すようにアンチホットリンクを設定する 1. nginx設定ファイルを編集する アンチホットリンクで保護されたリソースを書き換えるための仮想ホストを追加する サーバー{ 聞く 80; サーバー名 site1.test.com; ルート /var/wwwroot/site1; インデックス index.html; 位置 / { } 場所 ~ \.(jpg|png|gif|jpeg)$ { 有効なリファラー site1.test.com; ($invalid_referer) の場合 { 書き換え^/ http://site3.test.com/notfound.jpg; #403 を返します。 } } } サーバー{ 聞く 80; サーバー名 site2.test.com; ルート /var/wwwroot/site2; インデックス index.html; 位置 / { } } サーバー{ 聞く 80; サーバー名 site3.test.com; ルート /var/wwwroot/site3; インデックス index.html; 位置 / { } } 説明する location ~ \.(jpg|png|gif|jpeg)$ {} は、アンチホットリンクを設定するファイルの種類で、縦線 | で区切られます。 2. site3ルートディレクトリを作成する /var/wwwroot に移動します mkdir サイト3 echo -e "<h1>site3</h1><img src='notfound.jpg'>" >> site3/index.html 3. notfound.jpgファイルを/var/wwwroot/site3ディレクトリにアップロードします。 4. nginxサービスを再起動する
5. ホストマシン上のC:\Windows\System32\drivers\etc\hostsファイルを編集します。 site3.test.com のマッピングを追加する
6.ホストマシンでhttp://site2.test.comにアクセスします。 ご覧のとおり、site2 で盗まれた site1 の 1.jpg ファイルは、site3 の notfound.jpg ファイルにリダイレクトされます。 要約する 以上が、私が紹介したNginxのアンチホットリンクを設定する操作方法です。お役に立てれば幸いです。ご質問があれば、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: VueのSSRサーバーサイドレンダリング例の詳細な説明
>>: 大量のデータをMySQLにインポートする際に発生する問題と解決策の分析
ドキュメントはしばらく前から書いていましたが、アップロードする勇気がありませんでした。サーバーのセキ...
1. はじめにSELinux が Linux にもたらす主な価値は、柔軟で構成可能な MAC メカニ...
目次1: フロントエンドの手書きページング(データ量が少ない場合) 2: バックエンドのページング、...
目次概要解決策 1: クロージャ解決策2: 構造を分割する解決策3:解決策4: setTimeout...
OO、デザイン パターン、および多くのオブジェクト指向の原則について話す前に、まず 1 つのことを習...
iframe の使い方:コードをコピーコードは次のとおりです。 <DIV align=cent...
フォーマットエンコーディング1. ページの幅は600~800px、長さは1024px以内に設定してく...
springmvc による Spring の統合Spring 統合 springmvc の web....
1. 公式サイトからmysql-8.0.17-winx64をダウンロードし、Zipファイル形式を選択...
目次序文以前のバージョンイテレータパターンイテレータファクトリ関数イテレータプロトコル最後に序文多く...
1. provideとinjectの説明Provide と Inject により、ネストされたコンポ...
HTML ウェブ ページのハイパーリンク タグの学習チュートリアル リンク タグの属性 リンクは、ウ...
1. Dockerのホスト間通信Docker クロスホスト ネットワーク ソリューションには以下が含...
1. MS SQL Server 2005 --1. ログをクリアするexec('DUMP...
アイコン処理ソリューションこの記録の目的は、element-plus 以外のアイコンをコンポーネント...