首页 » 开源CMS » WordPress » 正文

利用.htaccess设置WordPress防盗链

站长都清楚,如果文章被转载到其它网站,甚至文章图片的链接地址都不改,直接远程链接图片,对自己网站的流量和带宽会有大量消耗,所以WordPress设置图片防盗链是非常有必要的。

本方法适用于Apache环境,需要开启mod_rewrite模块以支持htaccess规则,以下是具体的.htaccess文件里的代码:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteBase /wp-content/uploads/
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !zhangwenbao.com [NC]
RewriteCond %{HTTP_REFERER} !bing.com [NC]
RewriteCond %{HTTP_REFERER} !zhuaxia.com [NC]
RewriteCond %{HTTP_REFERER} !so.com [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !yahoo.com [NC]
RewriteCond %{HTTP_REFERER} !sm.cn [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteRule .*\.(gif|jpg|png|rar)$ http://zhangwenbao.com/wp-content/uploads/2018/06/logo.png [L]
</IfModule>
# END WordPress

将以上代码保存为.htaccess文件,覆盖wordpress根目录已有的.htaccess文件即可,并将其权限设置为444只读,可以防止设置程序时被自动替换掉,还可以增加网站的安全性。
代码里的网址是白名单网址,就是允许转载显示图片的网站,大都是搜索引擎,可自行添加白名单,来自上面的网站则正常显示图片,否则直接转到一张指定的盗链提示图片。
将代码里的zhangwenbao.com改为你的域名,把http://zhangwenbao.com/wp-content/uploads/2018/06/logo.png改为你自己的盗链提示图片。

发表评论