これは私が構築しているサーバーのシステムです。
- オリジナルウェブサイト
- 重複ウェブサイト
- 重複ウェブサイトは許可されていません。
original-website.com にいくつかのコンテンツを掲載しました。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>HTML 5 Boilerplate</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
This book is written by Zeal Vora. It's a good book. I am just writing filler content here.
<img src="zealvorabook.jfif"></img>
</body>
</html>
ここで、duplicate-website.com と unallowed-duplicate-website.com の両方にアクセスし、そこにあるコンテンツをコピーします。画像は original-website.com に参照されます。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>HTML 5 Boilerplate</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
This book is written by Zeal Vora. It's a good book. I am just writing filler content here.
<img src="http://original-website.com/zealvorabook.jfif"></img>
</body>
</html>
同じコンテンツが unallowed-duplicate-website.com に貼り付けられました
次に、各ホスト ファイルに IP とドメイン名のマッピングを追加します。次のようになります。
192.168.1.75 duplicate-website.com
192.168.1.76 original-website.com
192.168.1.74 unallowed-duplicate-website.com
それから、私は/etc/nginx/conf.d/original-website.conf
#original-website.conf
server{
listen 80;
server_name original-website.com;
location / {
root /usr/share/nginx/html/;
location ~* \.(jpg|png|gif|jfif)$ {
valid_referers none duplicate-website.com;
if ($invalid_referer) {
return 403;
}
}
}
}
さて、ブラウザで duplicate-website.com の IP アドレスを入力しても、画像が表示されません。なぜでしょうか?