Nginx/Apache服务器网站图片防盗链规则设置方法

发布时间:2022-06-23 10:04 来源:资源部落 阅读:87 作者:资源部落 栏目: 经验分享 欢迎投稿:712375056

我们在编辑网站内容的时候,为了让文章图文并茂,都会插入一些图片,这样使得内容更具备真实性和可读性。由于搜索引擎对于图片的抓取,以及网站内容被他人采集、复制问题,往往也会将图片直接复制过去,但是并不是将图片下载到他们本地,而是直接调用原网站的图片链接。

这样势必会增加原网站服务器的负担、流量等问题。要防止图片被盗链的问题,就必须给网站服务器环境设置防盗链。下面分享Nginx和Apache两个常用环境的图片防盗链方法。

1、Nginx服务器图片防盗链规则

location ~ .*.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
expires 30d;
access_log off;
valid_referers none blocked *.zyhot.com server_names ~.google. ~.baidu.;
if ($invalid_referer) {
#return 403;
rewrite ^/ http://img.zyhot.com/dao.jpg;
}
}

我们将修改当前站点的.CONF规则中,将修改和替换对于图片和流媒体的控制模块。我们可以直接将图片设置403不可见,也可以设置一个替代图片。同时,我们也需要允许百度、谷歌搜索引擎的抓取。

2、Apache服务器图片防盗链规则

# 开启Rewrite模块
RewriteEngine On
# 定义要保护的文件夹,建议只要保护上传文件夹(/wp-content/uploads/)就可以
RewriteBase /wp-content/uploads/
#允许空的来源,因为用户可能手动输入图片网址
RewriteCond %{HTTP_REFERER} !^$ [NC]
#允许自己的网站访问啦
RewriteCond %{HTTP_REFERER} !zyhot.com [NC]
#允许几个常用的在线阅读器的访问
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteCond %{HTTP_REFERER} !feedsky.com [NC]
#括号中的是要保护的文件拓展名,这里只保护了 gif,jpg,png,再加上出错时的图片地址
RewriteRule .*.(gif|jpg|png)$ http://img.zyhot.com/dao.jpg [R,NC,L]

修改网站所在的.htaccess文件。

这样,可以根据自己需要的网站服务器环境进行修改图片防盗链。

来源链接:https://www.zyhot.com/article/2152.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。