知识库 / 阶段 5 · 站外 SEO:外链与友链 / 搜索引擎优化(SEO) ↗ / 第 004 节

友情链接模块开发需求

《友链统计功能设计需求文档》#

1. 功能目标(Feature Goals)#

为友情链接(友链合作站点)提供精准的来路/去路访问统计,实现友链效果监控与数据报表展示。

统计范围包括:

  • 来路 PV(Ref-in):用户从友链站点跳转到本站

  • 去路 PV(Ref-out):用户从本站跳转至友链站点

  • 24 小时内 IP 去重统计 UV

  • 自动生成每日友链统计报表

  • 支持后台筛选、查询、管理渠道值

  • 自动清理超过 30 天的历史数据

2. 名词解释(Definitions)#

名称 说明
友链站点 合作网站,如 A站、B站、C站
来路 PV 用户从友链站点访问本站的页面浏览数
去路 PV 用户从本站点击友链,跳转到友链站点的浏览数
渠道值(code) 后台手动生成的识别码,如 qd001 用于识别来源站点
UV(独立访客) 24 小时内按 IP 去重后的访问次数

3. 需求大纲(Overview)#

✔ 后台可手动创建友链站点,配置:

  • 名称

  • 站点域名

  • 渠道值(手动生成)

  • 跳转 URL

✔ 统计目标

  • 统计每日来路 PV(来自友链)

  • 统计每日去路 PV(跳转到友链)

  • 每 IP 24 小时内只计一次(UV)

  • 自动生成每日汇总统计表

  • 超过 30 天历史统计数据自动删除

✔ 后台统计页面功能

  • 按时间查询

  • 按站点名称查询

  • 按渠道值查询

  • 导出数据(可选)

4. 数据流(Flow)#

4.1 来路(Ref-in)统计流程#

用户从 A站 → 点击跳转 → 访问本站:

https://yourdomain.com/?ref=qd001

系统逻辑:

  1. 检查 ref 是否为有效渠道值

  2. 记录访问 IP

  3. 判断该 IP 在 24 小时内是否已记录

  4. 若未记录 → 来路 PV +1

  5. 写入原始日志表(可选)

4.2 去路(Ref-out)统计流程#

用户从本站 → 点击跳转 → A友链站:

本站跳转链接格式:

https://yourdomain.com/go?code=qd001

系统逻辑:

  1. 根据 code 找到友链站点

  2. 记录 IP、code、时间

  3. 判断是否重复(24 小时内 IP 去重)

  4. 去路 PV +1

  5. 跳转至真实友链地址

5. 数据表设计(Database Schema)#

字段 类型 说明
id int 主键
name varchar 友链站名称
domain varchar 站点域名
code varchar 渠道值(后台生成)
url varchar 跳转链接
status tinyint 是否启用
created_at datetime 创建时间

(可选,但用于 IP 去重与统计)

字段 说明
id 主键
link_id 友链 id
type in / out
ip 访问来源 IP
created_at 时间

用于最终展示的数据。

字段 类型 说明
id int 主键
date date 统计日期
link_id int 友链站点 id
name varchar 站点名称(冗余)
domain varchar 站点域名(冗余)
code varchar 渠道值(冗余)
ref_in int 来路 PV
ref_out int 去路 PV

📌 每日凌晨自动生成今日数据,保存 30 天

6. 统计生成逻辑#

6.1 访问实时记录(in/out)#

每次有来路或去路,写入 logs 表:

示例:

link_id type ip time
1 in 1.2.3.4 2025-05-26 10:20
1 out 1.2.3.4 2025-05-26 11:05

6.2 每日统计脚本(定时任务)#

每天凌晨自动执行:

统计前一天的数据 → 写入 daily_stats 表

删除 30 天前的数据

统计公式:

SELECT

DATE(created_at) AS date,

link_id,

COUNT(DISTINCT CASE WHEN type='in' THEN ip END) AS ref_in,

COUNT(DISTINCT CASE WHEN type='out' THEN ip END) AS ref_out

FROM friend_link_logs

GROUP BY date, link_id;

7. 后台页面需求(Admin UI)#

7.1 友链管理页#

功能:

  • 添加友链(手动生成渠道值)

  • 修改友链

  • 上下架

  • 删除

  • 查看基本信息

字段:

  • 名称

  • 域名

  • 渠道值

  • 跳转地址

  • 状态

7.2 友链统计页(核心)#

筛选条件:

  • 日期范围(默认最近 7 天)

  • 站点名称

  • 渠道值

表格格式如下(你提供的):

日期 站点名称 域名 渠道值 来路 PV 去路 PV
5/26/2025 A友链站 a.com qd001 55 89
5/26/2025 B友链站 b.com qd002 100 103
5/26/2025 C友链站 c.com qd003 88 100

8. 自动清理规则#

系统定时任务:

删除 friend_link_logs 中超过 30 天的记录

删除 friend_link_daily_stats 中超过 30 天的记录