[
{
  "title": "Hugo 博客基础改造：导航、搜索、头像和 Favicon",
  "url": "/posts/hugo_blog_basic_customization_no_ads/",
  "content": "最近把自己的 Hugo 博客做了一轮基础改造，主要处理了几个小问题：\n去掉顶部不需要的「归档」「关于」 增加搜索页面 修复搜索结果里的 undefined 给站点名称加头像 把头像同步到浏览器标签页图标 下面整理一份完整记录，方便后面复用。\n一、去掉顶部「归档」「关于」 Hugo 的导航菜单一般配置在 config.yaml 里。\n原来可能是这样：\nmenu: main: - name: 文章 url: /posts/ weight: 10 - name: 归档 url: /archives/ weight: 20 - name: 标签 url: /tags/ weight: 30 - name: 搜索 url: /search/ weight: 40 - name: 关于 url: /about/ weight: 50 如果不想在顶部显示「归档」和「关于」，直接删掉对应菜单即可：\nmenu: main: - name: 文章 url: /posts/ weight: 10 - name: 标签 url: /tags/ weight: 30 - name: 搜索 url: /search/ weight: 40 如果不确定配置在哪里，可以搜索：\ngrep -R \u0026#34;归档\\|关于\\|archives\\|about\u0026#34; -n config.yaml hugo.yaml config.toml hugo.toml themes layouts content 注意：\n这里只是去掉顶部菜单，不一定要删除 content/about.md 或 content/archives.md。\n二、实现搜索页面 Hugo 是静态博客，本身没有后端搜索服务。常见做法是：\nHugo 生成搜索索引 JSON，前端页面通过 JavaScript 在本地搜索。\n如果使用的是 PaperMod 主题，可以直接使用主题自带的搜索能力。\n1. 开启 JSON 输出 在 config.yaml 中加入：\noutputs: home: - HTML - RSS - JSON 这一步会让 Hugo 生成：\n/index.json 搜索页面会读取这个文件。\n2. 创建搜索页面 新建文件：\nvi content/search.md 内容：\n--- title: \u0026#34;搜索\u0026#34; layout: \u0026#34;search\u0026#34; url: \u0026#34;/search/\u0026#34; summary: \u0026#34;搜索文章\u0026#34; --- 这样 Hugo 会生成：\n/public/search/index.html 3. 检查搜索页面是否生成 执行：\nhugo --cleanDestinationDir 检查文件：\nls public/search/index.html ls public/index.json 如果这两个文件都存在，说明搜索页面已经生成成功。\n4. 发布到 Nginx 目录 我当前 Nginx 的站点目录是：\n/usr/share/nginx/html 所以重新发布：\nhugo --cleanDestinationDir rm -rf /usr/share/nginx/html/* cp -r public/* /usr/share/nginx/html/ 访问：\nhttps://你的域名/search/ 三、修复搜索结果里的 undefined 搜索结果里出现 undefined，一般是模板里显示了某个字段，但搜索索引里没有这个字段。\n例如页面里用了：\n${item.date} 但是 /index.json 里没有 date 字段，就会显示：\nundefined 方案一：不显示空字段 把搜索结果模板里的日期显示改成：\n${item.date ? `\u0026lt;div style=\u0026#34;font-size:14px;color:#888;margin-bottom:8px;\u0026#34;\u0026gt;${item.date}\u0026lt;/div\u0026gt;` : \u0026#34;\u0026#34;} 这样没有日期时就不会显示 undefined。\n方案二：给索引补充日期字段 如果自己写了 layouts/_default/index.json，可以这样写：\n[ {{- range $index, $page := where .Site.RegularPages \u0026#34;Type\u0026#34; \u0026#34;posts\u0026#34; -}} {{- if $index -}},{{- end }} { \u0026#34;title\u0026#34;: {{ $page.Title | jsonify }}, \u0026#34;url\u0026#34;: {{ $page.RelPermalink | jsonify }}, \u0026#34;content\u0026#34;: {{ $page.Plain | jsonify }}, \u0026#34;date\u0026#34;: {{ $page.Date.Format \u0026#34;2006-01-02\u0026#34; | jsonify }} } {{- end -}} ] 然后重新生成发布。\n四、给站点名称加头像 我把头像文件放在：\nstatic/image/ Hugo 里 static 目录下的文件会原样发布到网站根路径。\n例如：\nstatic/image/avatar-round.png 发布后访问路径就是：\n/image/avatar-round.png 1. 配置站点头像 在 config.yaml 里加：\nparams: label: text: \u0026#34;笼中橘猫\u0026#34; icon: \u0026#34;/image/avatar-round.png\u0026#34; iconHeight: 32 这样 PaperMod 左上角站点名称前面会显示头像。\n2. 让头像显示为圆形 新建 CSS 文件：\nmkdir -p assets/css/extended vi assets/css/extended/custom.css 加入：\n.logo a { display: flex; align-items: center; gap: 8px; } .logo a img { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; } 如果想要文字在前、头像在后，可以这样：\n.logo a img { order: 2; } 五、把头像应用到浏览器标签页 浏览器标签页左边的小图标叫：\nfavicon 准备这些文件：\nstatic/image/favicon.ico static/image/favicon.png static/image/favicon-16x16.png static/image/favicon-32x32.png static/image/apple-touch-icon.png 然后在 config.yaml 中配置：\nparams: assets: favicon: \u0026#34;/image/favicon.ico\u0026#34; favicon16x16: \u0026#34;/image/favicon-16x16.png\u0026#34; favicon32x32: \u0026#34;/image/favicon-32x32.png\u0026#34; apple_touch_icon: \u0026#34;/image/apple-touch-icon.png\u0026#34; 如果前面已经有 params，要合并写法，不要重复写多个 params。\n完整示例：\nparams: label: text: \u0026#34;笼中橘猫\u0026#34; icon: \u0026#34;/image/avatar-round.png\u0026#34; iconHeight: 32 assets: favicon: \u0026#34;/image/favicon.ico\u0026#34; favicon16x16: \u0026#34;/image/favicon-16x16.png\u0026#34; favicon32x32: \u0026#34;/image/favicon-32x32.png\u0026#34; apple_touch_icon: \u0026#34;/image/apple-touch-icon.png\u0026#34; 发布后可以直接访问验证：\nhttps://你的域名/image/favicon.ico https://你的域名/image/avatar-round.png 注意：\n浏览器对 favicon 缓存很强，改完后可能需要用无痕窗口打开，或者访问：\nhttps://你的域名/?v=2 六、完整发布命令 每次改完配置、模板、CSS 或图片后，执行：\nhugo --cleanDestinationDir rm -rf /usr/share/nginx/html/* cp -r public/* /usr/share/nginx/html/ 如果改了 Nginx 配置，再执行：\nnginx -t systemctl reload nginx 七、常见问题 1. /search/ 访问 404 检查：\nls public/search/index.html 如果不存在，说明搜索页面没生成。\n检查 content/search.md 是否存在：\nls content/search.md 重新生成：\nhugo --cleanDestinationDir 如果 public/search/index.html 存在，但线上还是 404，说明没有正确复制到 Nginx 目录。\n检查：\nls /usr/share/nginx/html/search/index.html 2. 搜索没有结果 检查：\nls public/index.json 如果没有，说明没有开启：\noutputs: home: - HTML - RSS - JSON 3. 头像不显示 检查头像是否能直接访问：\nhttps://你的域名/image/avatar-round.png 如果打不开，说明图片没有放到 static/image/，或者没有重新发布。\n4. 浏览器标签图标不更新 favicon 有缓存，可以尝试：\nhttps://你的域名/?v=2 或者使用无痕窗口打开。\n也可以直接访问：\nhttps://你的域名/image/favicon.ico 确认图标文件是否已经生效。\n八、最终目录结构参考 blog-root/ ├── config.yaml ├── content/ │ └── search.md ├── static/ │ └── image/ │ ├── avatar-round.png │ ├── favicon.ico │ ├── favicon.png │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ └── apple-touch-icon.png ├── assets/ │ └── css/ │ └── extended/ │ └── custom.css └── layouts/ └── partials/ └── extend_head.html 这次改造完成后，博客基本具备了一个个人站点该有的基础体验：\n顶部导航更简洁 搜索可用 站点头像统一 浏览器标签页有识别度 后续可以继续优化文章目录、代码块样式、评论系统、访问统计和自动部署。\n",
  "date": "2026-05-16"
},
{
  "title": "个人开发者做微信小游戏：从域名、服务器到备案、软著的一次性整理",
  "url": "/posts/wechat-minigame-domain-server-icp-gongan-ruanzhu-guide/",
  "content": "最近在开发微信小游戏，原本以为主要难点是玩法、素材、代码和审核。真正开始做才发现，技术之外还有一整套“上线基础设施”：买域名、域名实名认证、买云服务器、域名解析、ICP备案、公安备案、微信小游戏备案，后续如果做 App，还可能涉及 App 备案和软著。\n这些事情单独看都不复杂，但第一次做很容易混在一起：到底是域名备案，还是网站备案？网站备案和小游戏备案是不是一回事？公安备案什么时候做？软著是不是必须？这篇文章按个人开发者的真实上线路径，把这些问题一次性整理清楚。\n先说结论 如果你是个人开发者，想在国内正常上线网站、微信小游戏，后续再做 App，大致会遇到下面几类事情：\n事项 解决什么问题 一般什么时候做 域名注册 给网站、接口、资源提供固定访问地址 一开始 域名实名认证 证明域名归属主体 注册域名后 云服务器 / 对象存储 放网站、后端接口、静态资源 开发联调前 域名解析 把域名指向服务器 IP、对象存储或 CDN 服务器准备好后 SSL证书 开启 HTTPS，接口和小游戏基本都需要 域名解析后 ICP备案 国内服务器提供互联网信息服务的基础备案 正式上线前 公安联网备案 网站 / App 开通后的公安网安备案 ICP 后、开通后尽快 微信小游戏备案 微信生态内小游戏上线前的备案和审核流程 提交发布前 软著 证明软件作品权属，部分平台和类目可能要求 功能稳定后 App备案 后续做 Android / iOS App 并联网运营时需要 App 上架前 最容易踩坑的一点是：备案不是一个东西，而是一组不同系统里的合规动作。\nICP备案归通信管理体系，公安联网备案归公安网安体系，小程序 / 小游戏备案通过微信平台入口处理，软著是版权登记。它们不是互相替代关系。\n一、先把几个概念分清楚 1. “域名备案”通常指 ICP备案 很多人会说“域名备案”，但严格来说，备案的核心不是单独给域名备案，而是给你提供的互联网信息服务备案。只是备案时会绑定域名、主体、服务器接入商等信息。\n比如你有一个网站：\nhttps://example.com 如果这个网站部署在中国大陆境内服务器上，并且绑定自己的域名公开访问，一般就需要做 ICP 备案。备案通过后，你会拿到类似这样的备案号：\n某ICP备XXXXXXXXXX号 然后需要把备案号放在网站底部，并链接到工信部备案系统。\n2. ICP备案和公安备案不是一回事 ICP备案完成后，网站可以在国内服务器上合规接入；但网站 / App 开通后，通常还要去全国互联网安全管理服务平台做公安联网备案。\n简单理解：\nICP备案：通信管理层面的备案 公安备案：公安网安层面的备案 两者入口、审核单位、展示编号都不一样。网站底部通常会同时展示：\n某ICP备XXXXXXXXXX号 某公网安备 XXXXXXXXXXXXXX号 3. 微信小游戏备案不是网站 ICP 的简单复制 微信小游戏属于微信生态里的应用形态。即使你已经有网站备案，小游戏上线仍然要按微信后台要求走小程序 / 小游戏相关备案和资质流程。\n也就是说：\n网站备案 ≠ 小游戏备案 你的网站可以备案成功，但小游戏仍然可能因为主体、类目、资质、内容审核、自审材料、名称规范等问题卡住。\n4. App备案和软著也不是一回事 后续如果你把小游戏扩展成 Android / iOS App，要注意两个概念：\nApp备案：互联网信息服务备案 软著：软件著作权登记 App备案解决的是“这个 App 是否履行了互联网信息服务备案手续”；软著解决的是“这个软件作品的权属证明”。有些应用市场、游戏类目、资质审核会要求软著，但它不等于 App备案，也不等于游戏版号。\n二、推荐的整体顺序 个人开发者不要一上来就同时处理所有事情，容易乱。更合理的顺序是：\n确定主体 ↓ 买域名 ↓ 域名实名认证 ↓ 买国内云服务器 / 轻量服务器 / 对象存储 ↓ 部署网站、接口或静态资源 ↓ 配置域名解析 ↓ 申请 SSL 证书 ↓ 提交 ICP 备案 ↓ 备案通过后开放访问 ↓ 网站底部挂 ICP 备案号 ↓ 提交公安联网备案 ↓ 网站底部挂公安备案号 ↓ 微信小游戏后台补齐备案、类目、资质、审核材料 ↓ 后续做 App 时再做 App备案、软著、应用市场材料 如果只是做一个个人静态网站，流程会简单一些；如果还要给微信小游戏提供后端接口、资源下载、排行榜、登录、广告、支付、用户数据等能力，流程会更复杂。\n三、主体选择：个人、个体户、公司 这是最先要想清楚的问题。\n个人主体 个人主体适合：\n个人博客 非经营性网站 简单工具类项目 早期验证项目 不涉及复杂资质、不涉及强商业化的小游戏 优点是成本低、流程相对简单。缺点也明显：支付、广告变现、经营性服务、部分游戏类目、部分应用市场材料会受限制。\n个体工商户 / 公司主体 如果后续计划做以下事情，更建议尽早考虑非个人主体：\n微信支付 广告变现 App 上架多个安卓应用市场 团队协作 商业化运营 游戏内购 更完整的资质申请 后续申请商标、软著、合同、发票 缺点是维护成本更高，包括工商、税务、记账、年报等。\n我的建议 如果只是先验证玩法，可以先用个人主体做非经营性项目，不要一开始就把公司、支付、版号、复杂后端都堆上。\n但如果项目目标本来就是商业化、广告变现、内购、长期运营，最好一开始就按公司或个体户路径设计，不然后面主体迁移会很麻烦。\n四、域名：先买一个长期能用的 域名不是越便宜越好。个人开发者常见选择：\n类型 适合情况 .com 最通用，适合长期品牌 .cn 国内项目常见，但实名和管理要求更严格 .icu / .xyz 等 便宜，适合测试或个人站 拼音域名 适合中文产品 品牌短域名 适合长期项目 域名买完后要做实名认证。备案时，域名实名认证主体要尽量和备案主体保持一致，否则容易被驳回。\n比如：\n备案主体：张三 域名实名：李四 这种就很容易出问题。\n建议域名、云服务器、备案主体尽量保持同一个人或同一个公司，不要东一块西一块。\n五、云服务器：网站和小游戏后端要分开想 云服务器主要解决三类问题：\n1. 放网站 2. 放接口 3. 放静态资源或资源管理服务 对于微信小游戏来说，不一定一开始就要重后端。如果第一版只是本地关卡、静态资源、简单配置，可以尽量减少后端依赖。\n常见方案：\n方案 适合阶段 本地数据 第一版验证玩法 静态 JSON 远程配置关卡、公告、版本 云开发 快速做登录、云函数、数据库 自建 Spring Boot / Node 后端 需要更强控制力 对象存储 + CDN 图片、关卡资源、音频资源 如果只是小游戏第一版，不要一开始就做复杂后台管理系统。先把资源 JSON、版本配置、关卡数据这些最小能力跑通。\n六、域名解析：不是买完域名就能访问 域名买完后，需要在 DNS 解析里配置记录。\n常见记录：\nA记录：把域名指向服务器 IPv4 地址 CNAME：把域名指向另一个域名，比如 CDN 地址 AAAA：IPv6 地址 TXT：验证域名所有权，比如 SSL、邮箱、平台验证 比如你有服务器 IP：\n1.2.3.4 可以配置：\n主机记录：www 记录类型：A 记录值：1.2.3.4 访问：\nwww.example.com 就会解析到这台服务器。\n个人站建议至少配置：\nexample.com www.example.com 如果还要给小游戏用接口，可以单独配置：\napi.example.com static.example.com cdn.example.com 这样后面维护会清楚很多。\n七、SSL证书：小游戏接口基本都要 HTTPS 域名能解析到服务器之后，还需要配置 HTTPS。\n对于微信小游戏来说，后端接口、资源域名、下载地址等都要尽量使用 HTTPS，并且在微信后台配置合法域名。否则本地调试可能没问题，真机或线上环境就会请求失败。\n常见做法：\n方式 说明 云厂商免费证书 适合个人项目，申请方便 Let\u0026rsquo;s Encrypt 免费，但需要自己配置自动续期 商业证书 适合企业项目或更高要求场景 第一版个人项目，用云厂商免费证书通常就够了。\n八、ICP备案：国内服务器绕不开的一步 ICP备案一般通过你的云服务商提交，比如腾讯云、阿里云、华为云等。你在哪家买的中国大陆服务器，通常就在哪家做接入备案。\n大致流程：\n准备主体信息 ↓ 准备域名信息 ↓ 准备服务器备案服务码 / 实例 ↓ 填写网站信息 ↓ 上传证件和核验资料 ↓ 云服务商初审 ↓ 工信部短信核验 ↓ 管局审核 ↓ 备案通过 常见材料：\n材料 说明 身份证 / 营业执照 看主体是个人还是企业 负责人手机号 要能接短信核验 域名实名认证 主体要匹配 网站名称 不能随便写敏感、经营性、夸大词 网站内容说明 和实际网站内容一致 服务器信息 需要符合备案接入要求 常见坑：\n域名实名主体和备案主体不一致。 网站名称带“中国”“官方”“平台”等敏感词。 个人备案写了经营、交易、平台、商城等内容。 备案期间网站提前开放，内容和备案描述不一致。 手机号收不到短信核验。 通信地址不详细。 前置审批项乱选。 用的不是中国大陆服务器，却想做国内 ICP 接入备案。 备案通过后，网站底部要挂备案号，并链接到工信部备案系统。\n九、公安备案：ICP备案后继续做 很多人 ICP 通过后就以为结束了，其实网站开通后还要做公安联网备案。\n大致流程：\n登录全国互联网安全管理服务平台 ↓ 注册个人 / 法人账号 ↓ 填写网站主体信息 ↓ 填写网站信息 ↓ 填写域名、IP、接入商 ↓ 提交审核 ↓ 审核通过 ↓ 获取公安备案号和图标 ↓ 放到网站底部 公安备案常见材料：\n材料 说明 主体证件 身份证或营业执照 网站域名 已完成 ICP 的域名 网站名称 和 ICP、网站实际内容尽量一致 服务器 IP 当前实际接入 IP 接入服务商 云服务器提供商 网络安全负责人 一般就是站长或主体负责人 网站底部通常需要展示类似：\n某ICP备XXXXXXXXXX号 某公网安备 XXXXXXXXXXXXXX号 并分别链接到对应备案平台。\n十、微信小游戏备案和资质 微信小游戏上线不是只上传代码。大致会经过：\n注册小程序 / 小游戏账号 ↓ 完善名称、头像、简介 ↓ 选择服务类目 ↓ 完成主体相关认证 / 备案 ↓ 上传小游戏代码 ↓ 提交类目和资质材料 ↓ 内容审核 ↓ 发布上线 个人开发者要重点看这几件事：\n当前主体是否支持你选择的小游戏类目。 是否涉及支付、虚拟支付、广告变现。 是否需要软著。 是否需要游戏自审自查报告。 是否涉及版号、出版、棋牌、抽奖、未成年人、强联网等高风险内容。 小游戏名称、图标、简介是否和实际内容一致。 游戏内容是否有误导、侵权、赌博、诱导分享、违规广告等问题。 小游戏审核常见坑：\n问题 后果 类目选错 审核驳回 名称和内容不一致 审核驳回 资质材料缺失 无法提交或驳回 游戏自审报告不规范 审核驳回 使用侵权素材 审核驳回甚至投诉 涉及付费但没有资质 无法上线或无法开通能力 隐私协议乱写 审核风险 用户协议缺失 审核风险 诱导分享、诱导关注 审核风险 后端接口域名没配 HTTPS / 没加白名单 调用失败 第一版小游戏尽量做成：\n轻玩法 无支付 无强社交诱导 无敏感题材 无复杂用户数据 无版权风险素材 先把“能上线”跑通，再逐步增加广告、排行榜、登录、云同步、付费等功能。\n十一、软著：什么时候需要准备 软著全称是计算机软件著作权登记。它不是所有项目上线的绝对前置条件，但在下面场景很常见：\n微信小游戏某些资质审核 安卓应用市场上架 游戏类产品证明原创性 公司项目资产沉淀 防止被抄袭后难以举证 后续融资、合同、投标、资质材料 软著一般需要准备：\n材料 说明 软件名称 要和申请表、文档、截图保持一致 版本号 常见如 V1.0 源代码文档 通常取前后连续页，格式要规范 用户手册 / 设计说明书 介绍软件功能和使用流程 身份证明 个人身份证或企业营业执照 权属说明 自主开发、合作开发、委托开发等要说清楚 软著最容易出问题的是名称和版本不一致：\n申请表：粘粘拼图小游戏软件 V1.0 说明书：粘粘拼图 V1.0 源码页眉：拼图游戏 V1.0 截图标题：趣味拼图 这种就容易被要求补正。\n建议从项目一开始就统一命名：\n产品展示名：粘粘拼图 软著名称：粘粘拼图小游戏软件 V1.0 包名 / 项目名：sticky-puzzle 文档名称：粘粘拼图小游戏软件 V1.0 用户手册 十二、后续做 App：还会多哪些事情 如果后续把微信小游戏扩展成 App，事情会增加。\n1. App备案 在国内提供互联网信息服务的 App，一般需要履行 App备案。App备案通常会通过网络接入服务商或应用分发平台提交。你需要准备：\n材料 说明 主体信息 个人或企业 App 名称 要和上架名称一致 包名 Android 包名 / iOS Bundle ID 运行平台 Android、iOS、HarmonyOS 等 域名 / IP App 后端访问的域名 图标、简介 与实际应用一致 负责人信息 手机号、证件等 注意：App备案和网站 ICP 备案不是简单复用。即使你的网站已经备案，App 仍然需要补充 App 信息。\n2. 应用市场材料 国内安卓应用市场常见会要求：\nApp备案号 软著 隐私政策 用户协议 权限说明 ICP / 主体信息 安全检测 应用图标和截图 特殊类目资质 不同市场要求不一样，小米、华为、OPPO、vivo、应用宝等都可能有自己的审核细节。\n3. 隐私合规 App 比小游戏更容易涉及隐私审核。要特别注意：\n不要过度申请权限。 首次启动不要直接弹系统权限。 隐私政策要写清楚收集哪些信息。 SDK 收集信息也要披露。 注销账号、撤回同意、权限关闭要有路径。 儿童、位置、通讯录、相册、麦克风等权限更敏感。 如果只是做一个小游戏 App，第一版尽量避免申请太多权限。\n十三、建议维护一个合规资料目录 开发项目时建议专门建一个目录保存材料：\ncompliance/ domain/ 域名实名认证截图 域名证书.pdf icp/ ICP备案信息.md ICP备案号.txt 短信核验记录.md gongan/ 公安备案信息.md 公安备案号.txt 公安备案图标.png wechat-minigame/ 小游戏名称说明.md 服务类目.md 游戏自审自查报告.docx 隐私协议.md 用户协议.md app/ App备案信息.md 包名记录.md 上架材料.md copyright/ 软著名称.md 源码提交版本.md 用户手册.docx 设计说明书.docx 这样后面换云服务商、改域名、上 App、申请软著、处理审核驳回时，不会到处找资料。\n十四、个人开发者最小上线方案 如果只是做微信小游戏第一版，不建议一开始做太重。可以按下面路径：\n1. 买一个长期域名 2. 买一台国内轻量云服务器 3. 先放一个个人网站或项目介绍页 4. 域名解析到服务器 5. 配 HTTPS 6. 做 ICP 备案 7. 备案号挂到网站底部 8. 做公安备案 9. 微信小游戏第一版只做本地关卡和静态配置 10. 远程资源先用静态 JSON + 图片资源 11. 暂时不做支付、不做复杂账号、不做强社交 12. 审核通过后再逐步加后端能力 这个路径的好处是成本低、变量少、审核风险小。\n十五、常见问题 1. 个人静态博客要不要备案？ 看部署位置。如果部署在中国大陆境内服务器并绑定域名公开访问，一般要备案。如果部署在海外平台，通常不走国内 ICP 备案，但国内访问速度、稳定性、后续和小游戏生态配合可能受影响。\n2. 域名没备案能不能先解析？ 技术上可以解析，但如果使用中国大陆云服务器，未备案域名访问 80 / 443 服务通常会被云厂商拦截或限制。正式上线前还是要完成备案。\n3. 备案期间网站能不能打开？ 一般不建议。备案审核会看网站内容，未备案先开站可能导致驳回。备案前可以放一个关闭页，或按云厂商备案要求处理。\n4. 公安备案是不是必须？ 网站 / App 开通后通常需要按要求做公安联网备案。实际操作上一般是 ICP 通过并开通网站后，再去全国互联网安全管理服务平台提交。\n5. 微信小游戏一定要软著吗？ 不能一概而论，要看主体、类目、平台后台要求、是否涉及支付 / 商业化 / 游戏资质等。建议以微信后台当前提示为准。如果你打算长期做游戏，软著最好尽早准备。\n6. 个人主体能不能做小游戏？ 可以做部分类型，但限制较多。涉及支付、虚拟支付、强商业化、特殊类目、资质要求时，个人主体会很受限。长期商业化建议考虑个体户或公司主体。\n7. 只做单机 App 要不要 App备案？ 如果完全不联网，通常和提供互联网信息服务的 App 不一样。但只要 App 需要联网访问服务器、登录、广告、支付、内容更新、云同步等，就要认真考虑 App备案和应用市场要求。\n8. 软著什么时候申请比较好？ 建议功能基本稳定、名称确定、版本号确定、核心代码和说明书能对应上时申请。太早申请，后面产品名和功能大改，材料容易不一致。\n十六、我现在的实际建议 如果你是个人开发者，正在做微信小游戏，又已经有了自己的个人网站，那么建议按这个优先级处理：\n第一优先级： - 域名稳定 - 网站能访问 - HTTPS 正常 - ICP 备案通过 - 网站底部备案号正确 第二优先级： - 公安备案完成 - 微信小游戏备案入口材料补齐 - 服务类目确认 - 隐私协议、用户协议、自审材料准备 第三优先级： - 软著材料准备 - App备案知识储备 - 后续安卓 / iOS 上架材料整理 - 公司 / 个体户主体是否需要提前规划 不要一开始就追求“所有资质一步到位”。个人项目最重要的是先把最小闭环跑通：\n能访问 → 能备案 → 能审核 → 能上线 → 能迭代 技术开发只是第一关，真正上线还要过合规、资质、平台审核、素材版权、隐私政策这些关。把这些流程提前理清，后面开发会省很多时间。\n参考资料 工信部 ICP/IP地址/域名信息备案管理系统：https://beian.miit.gov.cn/ 工信部《工业和信息化部关于开展移动互联网应用程序备案工作的通知》：https://www.miit.gov.cn/zwgk/zcwj/wjfb/tz/art/2023/art_920db564162e4312916a01bed6540ad8.html 微信小程序备案材料示例：https://developers.weixin.qq.com/miniprogram/product/record/record_material.html 全国互联网安全管理服务平台：https://beian.mps.gov.cn/ 中国版权保护中心：https://www.ccopyright.com.cn/ 国家版权局《计算机软件著作权登记办法》：https://www.ncac.gov.cn/xxfb/flfg/bmgz/202410/P020241015604759788122.pdf ",
  "date": "2026-05-16"
},
{
  "title": "第一篇文章",
  "url": "/posts/first-post/",
  "content": "这是我的第一篇 Hugo 博客文章。\n",
  "date": "2026-05-10"
}]
