AcoFork 旧站归档 · 第 14 次重构 · 已归档,仅供怀旧展示
3 分钟阅读

通过邮件混淆技术增强博客隐私

利用 rehype-email-protection 插件自动混淆电子邮件地址,保护免受垃圾邮件爬虫侵害的技术实现

通过邮件混淆技术增强博客隐私

本文非站长原创,由 https://github.com/afoim/fuwari/pull/31 提供

背景🔗

在网页上直接暴露电子邮件地址,会使其极易受到垃圾邮件机器人的自动抓取。为了解决这一隐私和安全问题,可以采用邮件地址混淆技术。

在提交 0cc6194f35b3ff4ab53718fd98022b17ac522303 中,项目引入了 rehype-email-protection 插件来应对此问题。

技术方案:rehype-email-protection🔗

rehype-email-protection 是一个 Rehype 插件,它能在网站内容处理流程中自动识别并混淆电子邮件地址。

配置实现🔗

该功能通过在 astro.config.mjs 文件中进行配置来启用。

首先,导入插件模块:

import rehypeEmailProtection from "./src/plugins/rehype-email-protection.mjs";

然后,在 Astro 配置的 rehypePlugins 数组中添加该插件,并指定 base64 作为混淆方法。

markdown: {
  rehypePlugins: [
    // ... 其他插件
    [rehypeEmailProtection, { method: "base64" }],
    // ... 其他插件
  ],
},

工作机制🔗

配置生效后,内容中所有标准的电子邮件地址(如 user@example.com)在网站构建过程中,都会被转换为 Base64 编码的字符串,并通过客户端 JavaScript 进行解码。

对于普通用户,浏览器会执行脚本将编码还原为可交互的 mailto: 链接,功能体验不变。而对于无法执行 JavaScript 的网络爬虫,它们只能获取到编码后的无意义字符串,从而达到了保护电子邮件地址不被轻易收集的目的。

结论🔗

集成 rehype-email-protection 插件是一种简单而有效的隐私增强手段。它以极低的配置成本,显著降低了因在公开网页上暴露电子邮件地址而导致的安全风险,是静态网站开发中值得推荐的一个实践。

引流:www.497995.xyz 树树放过我😭😭

版权声明

本文由 二叉树树 创作,采用 CC BY-NC-SA 4.0 许可协议。

转载请注明出处:AcoFork Blog - 通过邮件混淆技术增强博客隐私: https://af-archive-zola-tailwind.pages.dev/posts/email-privacy/

这篇文章是否对你有帮助?

发现错误或想要改进这篇文章?

在 GitHub 上编辑此页