最近在检查网站服务器的访问日志的时候,发现了大量来自同一个IP地址的的请求,用站长工具分析确认了我的网站内容确实是被他人的网站抓取了,我第一时间联系了对方网站的服务器提供商投诉了该网站,要求对方停止侵权行为,然而这只能暂时性的解决问题,为了避免以后再有意外发生,我结合了咨询Hostease的技术支持得到的反馈以及自己从网上了解到的信息,做了以下的优化,分享出来希望能对大家有一些帮助。
1.在网站上放置版权声明
我们经常可以看到一些网页上会展示版权信息,比如Hostease的官网,如图:
正如图中所展示的,大部分网站的版权内容是展示在页脚部分的,这个做法虽然不能解决网站被抓取的问题,但是当需要提交DMCA 投诉或者法律介入的时候,版权信息就是非常有用的信息。
2.更改RSS feed
抓取工具在抓取网站内容的时候,需要依赖网站的RSS feed,对RSS feed做一些小的调整,就可以防止内容被抓取。
在RSS源中设置只显示帖子的摘要而非完整内容,这样对方即便抓取,也无法抓取到完整的内容,设置步骤如下:
登录到WordPress仪表盘>>设置(Setting)>>转到"读取(Reading)">>将图中选项更改为摘要:
3.屏蔽抓取工具的IP地址
如果网站使用的是VPS或者服务器,可以通过防火墙来执行屏蔽,但是我相信很多人和我一样使用的是虚拟主机,能够获得的权限非常有限,这种情况下,可以通过网站根目录下的.htaccess文件来阻止要屏蔽的IP地址,代码如下:
|----------------------------|
| Deny from 111.222.333.444. |
如果要屏蔽多个IP,在同一行中输入多个IP,使用空格分隔即可。
4.保护网站的图片(禁用盗链并添加水印)
当盗用者在自己的网站上显示你的网站的图片,但却从你的服务器上加载图像,就会产生热链,可以通过在.htaccess文件中添加如下代码来设置允许使用你的网站上的图片的网站:
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| /* Prevent image hotlinking in WordPress */ RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?facebook.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?twitter.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?other-websites-go-here.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ - [F] |
我们还可以利用插件给网站上的图片添加水印,例如"Image Watermark",这是一款免费的插件,可以自动给上传的图片添加水印,也可以批量为网站上的现有图片添加水印。
5.增加内链
增加内链倒不是为了防止被抓取,而是能够在网站内容被抓取的情况下,您反而可以从中获利,被抓取的内容中的内部链接都有可能成为有价值的反向链接。