# 推奨: 「php で外部ホットリンクを禁止する方法: 最初に「.htaccess」ファイルを見つけて開き、次にコンテンツ「RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ [NC]」をファイルに追加し、最後に保存します。このファイルで十分です。
PHP ビデオ チュートリアル 」
#ホットリンクを防ぐための PHP 方法アンチホットリンク技術はすでに非常に一般的です。一部の Web サイトは、自分の写真が他の Web サイトに直接コピーされて使用されることを好まないため、アンチホットリンク技術を使用します。このようにして、他の人が Web サイトを直接コピーして使用するときは、プログラムの設定により、ホットリンク防止などの文字が表示されない、または表示されます。
アンチホットリンク技術を使用すると、写真の盗難を防ぐだけでなく、自分のサイトに写真をダウンロードするトラフィックも節約できます。これは非常に良いことだと思います。 PHP環境? PHP 環境では通常 Apache サーバーが使用されることがわかっているので、主に Apache のホットリンク対策方法を見てみましょう。実際、同じ原理が IIS でも使用されます。
Apache アンチホットリンク:
ほとんどの仮想ホストは Apache であるため、最も便利なアンチホットリンク設定は .htaccess ファイルを使用することです。インターネットで調べる方法はたくさんありますので、絶対に使いやすい方法をまとめました。次のコードを .htaccess ファイルに追加し、変更します。
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ [NC] RewriteCond %{HTTP_REFERER} !60ie.net [NC] RewriteCond %{HTTP_REFERER} !youdao.com [NC] RewriteCond %{HTTP_REFERER} !zhuaxia.com [NC] RewriteCond %{HTTP_REFERER} !twitter.com [NC] RewriteCond %{HTTP_REFERER} !facebook.com [NC] RewriteCond %{HTTP_REFERER} !xianguo.com [NC] RewriteCond %{HTTP_REFERER} !google.cn [NC] RewriteCond %{HTTP_REFERER} !google.com [NC] RewriteCond %{HTTP_REFERER} !google.com.tw [NC] RewriteCond %{HTTP_REFERER} !google.com.sg [NC] RewriteCond %{HTTP_REFERER} !google.com.hk [NC] RewriteCond %{HTTP_REFERER} !bloglines.com [NC] RewriteCond %{HTTP_REFERER} !soso.com [NC] RewriteCond %{HTTP_REFERER} !mail.qq.com [NC] RewriteCond %{HTTP_REFERER} !cn.bing.com [NC] RewriteCond %{HTTP_REFERER} !image.baidu.com [NC] RewriteCond %{HTTP_REFERER} !feedburner.com [NC] RewriteCond %{HTTP_REFERER} !feedsky.com [NC] RewriteRule .(png|jpg|gif)$ [R,NC,L]
コードの説明:
最初に最後の行を見てください。Web サイト上の png、jpg、gif ファイルをホットリンクから保護しました。Web サイト上の画像が上記の範囲外になると、ホワイトリストが Web サイトに表示されると、コードの最後の行にあるすべての画像が表示されます。
Nginx アンチホットリンク:
Nginx は .htaccess をサポートしていないため、設定が少し面倒です。まず、テキスト エディタでファイル /usr/local/nginx/conf/nginx.conf を開き (vhost を使用している場合は、vhost に移動して、対応する conf ファイル
を見つけます)、次のコードと一致します。サーバー セクションのすぐ内側。ここで話しているのはコピーではなく、マッチングについてであることに注意してください。{}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; valid_referers none blocked *.ilucong.com *.youdao.com *.zhuaxia.com *.xianguo.com *.google.cn *.google.com *.google.com.tw *.google.com.sg *.google.com.hk *.bloglines.com image.soso.com cn.bing.com image.baidu.com *.feedburner.com *.feedsky.com; if ($invalid_referer) { rewrite ^/ ; #return 404; } }
注: 不規則な行が表示される可能性があるため、編集には Windows 付属のメモ帳を使用しないでください。編集後、有効にするために Ngnix サービスを再起動してください。
以上がPHPで外部ホットリンクを禁止する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。