首页/wordpress/WordPress-手工打造文件及图片防止盗链(纯代码)

WordPress-手工打造文件及图片防止盗链(纯代码)

网站运营的过程是还是比较辛苦,每天坚持写原创文章,当然网站的浏览量也慢慢增多,突然发现网站的流量不够用了?仔细排查,发现有人在转载或采集你文章的同时,图片、文件也被一起转载,造成你网站流量大量丢失,遇到这种情况,真是欲哭无泪,今天教你如何纯代码对文件、图片进行防盗链。 当你安装wordpress之后,你的网站根目录下面,会一个名称为.htaccess文件,我们今天主要用的就是这个文件,我们所讨论的主机环境是基于linux环境,而windows则另当别论。 WordPress-手工打造文件及图片防止盗链(纯代码)第[1]张-wordpress-ThemeHello 一、我们使用文本编辑器打开.htaccess文件。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
二、将防盗链的代码插入到</IfModule>的上面,插入后结果如下。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteBase /wp-content/uploads/
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !themehello.com [NC]
RewriteCond %{HTTP_REFERER} !so.com [NC]
RewriteCond %{HTTP_REFERER} !soso.com [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !feedburner.com [NC]
RewriteCond %{HTTP_REFERER} !feedsky.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteRule .*\.(gif|jpg|png|rar|zip|pdf)$ https://www.themehello.com/daolian.png [R,NC,L]
</IfModule>
# END WordPress
三、因.htaccess文件实在太强大,所以这里我们只针对以上代码进行简单解释。

RewriteBase /wp-content/uploads/ 
//定义要保护的文件夹,建议只要保护上传文件夹就可以了

RewriteCond %{HTTP_REFERER} !jinsanguo.com [NC]
RewriteCond %{HTTP_REFERER} !so.com [NC]
RewriteCond %{HTTP_REFERER} !soso.com [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !feedburner.com [NC]
RewriteCond %{HTTP_REFERER} !feedsky.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
//允许自己的网站访问。
//允许相关搜索引擎及feed访问

RewriteRule .*\.(gif|jpg|png|rar|zip|pdf)$ https://www.themehello.com/daolian.png [R,NC,L]
//gif|jpg|png|rar|zip|pdf,受保护的文件类型。
//如果不是上面已经定义好的网站访问受保护的后缀名文件,那么进行跳转。
//https://www.themehello.com/daolian.png,这是你自己的防盗链图片。
//R指是跳转
//NC指是不区分大小写
//L的作用是指本次转向到此结束,后续的转向不受先前判断语句的影响
OK,到这里教程结束,.htaccess文件,术语叫做分布式配置文件,简单来说是Apache服务器中的一个配置文件,如果你打算玩转这个文件的话,需要Linux、Apache、正则的相关知识,但实际过程中,我们只取我们需要的功能就可以了。
收藏:

相关资讯