当前位置: 首页 > news >正文

如何防止WordPress网站内容被抓取

最近在检查网站服务器的访问日志的时候,发现了大量来自同一个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.增加内链

增加内链倒不是为了防止被抓取,而是能够在网站内容被抓取的情况下,您反而可以从中获利,被抓取的内容中的内部链接都有可能成为有价值的反向链接。

相关文章:

如何防止WordPress网站内容被抓取

最近在检查网站服务器的访问日志的时候,发现了大量来自同一个IP地址的的请求,用站长工具分析确认了我的网站内容确实是被他人的网站抓取了,我第一时间联系了对方网站的服务器提供商投诉了该网站,要求对方停止侵权行为,…...

全球化战略中的技术支柱:出海企业的网络技术解决方案

随着全球市场的一体化,中国的电商与游戏行业越来越倾向于扩展国际市场,这一过程被称为“出海”。成功的出海战略不仅需要强大的市场洞察和文化适应能力,还需依赖高效的网络技术,包括SOCKS5代理、代理IP、以及全面的网络安全策略。…...

在Linux上安装并运行RabbitMQ

目录 准备CentOS服务器 下载rabbit-server和erlang文件 启动RabbitMQ服务 准备CentOS服务器 两个命令,选一个能用的,查看CentOS服务器的版本 lsb_release -a下载rabbit-server和erlang文件 参考文章:http://t.csdnimg.cn/t8BbM 1、创建新…...

使用 docker-compose 搭建个人博客 Halo

说明 我这里使用的是 Halo 作为博客的工具,毕竟是开源了,也是使用 Java 写的嘛,另外一点就是使用 docker 来安装(自动挡,不用自己考虑太多的环境因素),这样子搭建起来更快一点,我们…...

《这就是ChatGPT》读书笔记

书名:这就是ChatGPT 作者:[美] 斯蒂芬沃尔弗拉姆(Stephen Wolfram) ChatGPT在做什么? ChatGPT可以生成类似于人类书写的文本,它基本任务是弄清楚如何针对它得到的任何文本产生“合理的延续”。当ChatGPT写…...

更专业的汽车软件研发工具链,怿星重磅发布新产品

怿星科技在2024北京国际车展同期举办主题为“创新引领未来——聚焦智能汽车软件新基建”的新产品发布会,重磅推出1款绝对优势产品和4套场景解决方案。同时举行了4场热点技术研讨:国产工具链的机遇与挑战、新架构下的的车载DDS应用探索及测试方案介绍、软…...

Stable Diffusion:AI绘画的新纪元

摘要: Stable Diffusion(SD)作为AI绘画领域的新星,以其开源免费、强大的生成能力和高度的自定义性,正在引领一场艺术与技术的革命。本文旨在为读者提供Stable Diffusion的全面介绍,包括其原理、核心组件、安…...

有5个excel表,每个表有6列。用python把这5个表合成1个表。

要将五个Excel表格合并成一个表格,我们可以使用pandas库,它提供了一个简单且强大的方式来处理和分析数据。下面是一个步骤说明和示例代码: 步骤: 安装pandas和openpyxl(如果你还没有安装的话)&#xff1a…...

【回溯算法】【Python实现】最大团问题

文章目录 [toc]问题描述回溯算法Python实现时间复杂性 问题描述 给定无向图 G ( V , E ) G (V , E) G(V,E),如果 U ⊆ V U \subseteq V U⊆V,且对任意 u u u, v ∈ U v \in U v∈U有 ( u , v ) ∈ E (u , v) \in E (u,v)∈E,则称…...

CMakeLists.txt语法规则:foreach 循环基本用法

一. 简介 cmake 中除了 if 条件判断之外,还支持循环语句,包括 foreach()循环、while()循环。 本文学习 CMakeLists.txt语法中的循环语句。 CMakeLists.txt语法中 有两种 循环实现方式:foreach循环与 while循环。 二. CMakeLists.txt语法规则…...

redis集群-主从机连接过程

首先从机需要发送自身携带的replid和offset向主机请求连接 replid:replid是所有主机在启动时会生成的一个固定标识,它表示当前复制流的id,当从机第一次请求连接时,主机会将自己的replid发送给从机,从机在接下来的请求…...

去哪里找高清视频素材?推荐几个短视频素材免费网站

在数字时代,视频内容的质量直接影响观众的吸引力和留存率。尤其是高清、4K视频素材和可商用素材,它们在提升视觉质量和叙事深度方面起到了至关重要的作用。以下是一些国内外的顶级视频素材网站,它们提供的资源将为您的创作提供极大的支持和灵…...

从互联网医院源码到搭建:开发视频问诊小程序的技术解析

如今,视频问诊小程序作为医疗服务的一种新形式,正逐渐受到人们的关注和青睐。今天,小编将为您详解视频问诊小程序的开发流程。 一、背景介绍 互联网医院源码是视频问诊小程序开发的基础,它提供了一套完整的医疗服务系统框架&…...

【Linux】常见指令(二)

mv指令 mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files) 是Linux系统下常用的命令,经常用来备份文件或者目录 功能: 1.剪切文件或者目录 2.对文件或者目录进行重命名 常用选项: -f &#xf…...

python元类与C#、Java中的反射

Python的元类和C#中的反射 在概念上有一定的相似性,但它们的目的和使用方式有所不同。 Python的元类: 元类(Metaclass)是控制类创建的类。它们定义了类的创建过程,可以修改类的行为。元类通过定制类的创建过程&…...

Echart.js绘制时间线并绑定事件

<template><div id"app"><!-- 定义一个具有指定宽高的容器&#xff0c;用于渲染图表 --><div ref"timeline" style"width: 800px; height: 600px;"></div></div> </template><script> import *…...

Flutter弹窗链-顺序弹出对话框

效果 前言 弹窗的顺序执行在App中是一个比较常见的应用场景。比如进入App首页&#xff0c;一系列的弹窗就会弹出。如果不做处理就会导致弹窗堆积的全部弹出&#xff0c;严重影响用户体验。 如果多个弹窗中又有判断逻辑&#xff0c;根据点击后需要弹出另一个弹窗&#xff0c;这…...

1290.二进制链表转整数

给你一个单链表的引用结点 head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。 请你返回该链表所表示数字的 十进制值 。 示例 1&#xff1a; 输入&#xff1a;head [1,0,1] 输出&#xff1a;5 解释&#xff1a;二进制数 (101) 转化为十进制…...

P8803 [蓝桥杯 2022 国 B] 费用报销

P8803 [蓝桥杯 2022 国 B] 费用报销 分析 最值问题——DP 题意分析&#xff1a;从N张票据中选&#xff0c;且总价值不超过M的票据的最大价值&#xff08;背包问题&#xff09; K天限制 一、处理K天限制&#xff1a; 1.对于输入的是月 日的格式&#xff0c;很常用的方式是…...

【Android】Kotlin学习之Lambda表达式

java和kotlin对比 Lambda语法 Lambda隐形参数 it 也可以不使用指定的名称it, 可以 自定义 Lambda 使用下划线...

零基础认知企业级数据分析平台如何落实数据建模(GAI)

理解数据建模的基本概念 数据建模是将业务需求转化为数据结构和关系的过程&#xff0c;核心目标是构建可支撑分析、预测或决策的数据模型。零基础需从以下维度入手&#xff1a; 业务理解&#xff1a;明确业务问题&#xff08;如销售预测、用户分群&#xff09;&#xff0c;与…...

LLM 使用 MCP 协议及其原理详解

LLM 使用 MCP 协议及其原理详解 &#x1f9e0; 一、MCP 协议概述 1. MCP 是什么&#xff1f; MCP&#xff08;Modular Communication Protocol&#xff09;是一种面向语言模型设计的通用通信协议&#xff0c;其设计目标是&#xff1a; 模块化&#xff08;Modular&#xff0…...

快速了解 GO之接口解耦

更多个人笔记见&#xff1a; &#xff08;注意点击“继续”&#xff0c;而不是“发现新项目”&#xff09; github个人笔记仓库 https://github.com/ZHLOVEYY/IT_note gitee 个人笔记仓库 https://gitee.com/harryhack/it_note 个人学习&#xff0c;学习过程中还会不断补充&…...

Ubuntu 24.04 LTS Chrome 中文输入法(搜狗等)失效?一行命令解决

Ubuntu 24.04 LTS Chrome 中文输入法&#xff08;搜狗等&#xff09;失效&#xff1f;一行命令解决 在 Ubuntu 24.04 LTS 中&#xff0c;如果你发现 Chrome 浏览器用不了搜狗输入法或其他 Fcitx5 中文输入法&#xff0c;可以试试下面的方法。 直接上解决方案&#xff1a; 打…...

YOLOv5 :训练自己的数据集

- **&#x1f368; 本文为[&#x1f517;365天深度学习训练营](https://mp.weixin.qq.com/s/rnFa-IeY93EpjVu0yzzjkw) 中的学习记录博客** - **&#x1f356; 原作者&#xff1a;[K同学啊](https://mtyjkh.blog.csdn.net/)** 我们接着上一篇文章配置完YOLOv5需要的环境后&#…...

电脑故障基础知识

1.1 了解电脑故障 分类&#xff1a;分为软件故障&#xff08;系统感染病毒、程序错误&#xff09;和硬件故障&#xff08;硬件物理损坏、接触不良&#xff09;。 原因&#xff1a;人为操作失误、病毒破坏、工作环境恶劣&#xff08;高温 / 灰尘&#xff09;、硬件老化。 准备工…...

useMemo useCallback 自定义hook

useMemo & useCallback & 自定义hook useMemo 仅当依赖项发生变化的时候&#xff0c;才去重新计算&#xff1b;其他状态变化时则不去做不必要的计算。 useCallback 缓存函数。但是使用注意&#x1f4e2; &#xff0c;useCallback没有特别明显的优化。 *合适的场景——父…...

Netty学习example示例

文章目录 simpleServer端NettyServerNettyServerHandler Client端NettyClientNettyClientHandler tcp&#xff08;粘包和拆包&#xff09;Server端NettyTcpServerNettyTcpServerHandler Client端NettyTcpClientNettyTcpClientHandler protocolcodecCustomMessageDecoderCustomM…...

WebSocket与实时对话式AI服务的集成

WebSocket与实时对话式AI服务的集成 在现代对话式AI系统中,传统的HTTP请求-响应模型已难以满足实时交互的体验需求。特别是用户对响应速度、逐字输出、会话上下文保持等方面提出更高要求时,需要一种能够建立持久连接并支持双向通信的协议。WebSocket正是在这一背景下,成为A…...

服务器上用脚本跑python深度学习的注意事项(ubantu系统)

bash: $\r: command not found 问题原因&#xff1a; 出现 bash: $\r: command not found 以及路径中出现 \r 通常是因为脚本文件是在Windows系统下编辑&#xff0c;然后在Linux&#xff08;如Ubuntu&#xff09;系统中运行。在Windows系统中&#xff0c;文本文件的换行符是 \…...