実験環境 • 最小限のインストール済みの 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 つです。クロージャをコア言語構造の不...
HTMLの動作原理: 1. ローカル操作: ブラウザでhtmlファイルを開く2. リモートアクセス...
VM Ware 仮想マシン CentOS の時刻は、次の図に示すように、現地時間と一致しません。おそ...
目次Vue ミックスインの使用ミックスインでのデータアクセスミックスイン/index.jsホーム.v...
目次1. 準備2. 展開プロセス3. アクセステストHalo は、ブログに慣れている学生に追加のオプ...
Mysqlはブール型を設定します1. Tinyintタイプテストテーブルを作成し、blフィールドをブ...
目次質問1件2つの方法3 実験結果と考察質問1件ご存知のとおり、 Pycharm 、 IDLE 、 ...
目次vue2の場合vue3ではセットアップに関する注意事項セットアップライフサイクルは、before...
線形グラデーション 背景画像: linear-gradient(方向、開始色、中間色1、中間色2、....
目次クラスコンポーネントイベントバインディング関数コンポーネントイベントバインディング要約するRea...
どの for ループまたは反復子がニーズに適しているかを知ることで、アプリケーションのパフォーマンス...
MySQL Workbench - モデリングおよび設計ツール1. モデルは、最も効果的で高性能なデ...
楽観的ロック楽観的ロックは、主にデータ バージョン記録メカニズムに基づいて実装され、通常はデータベー...
目次クエリの背景1. クエリをいいね2. JSON関数クエリ3. 共同インデックスクエリ4. 全文イ...