title-and-file-name-in-obsidian-notes
如果要将 Obsidian 笔记导出为静态网页(比如使用 Quartz、Hugo、Hexo 或 Obsidian Publish 等工具)并进行分享,**强烈建议统一使用“英文小写 + 短横线(`-`)”的命名方式**(这种格式在编程中被称为 `kebab-case`)。
#type / howto
#status / evergreen
#discipline / knowledge-base
#resource / obsidian
[!info] related notes
title-and-file-name-in-obsidian-notes
为什么推荐“小写英文 + 短横线”?
-
避免 URL 乱码(URL 编码问题): * 中文: 如果你的文件名是中文(如截图中的
ARP劫持),在生成网页链接时,浏览器会将其进行 URL 编码,变成类似…/%E5%8A%AB%E6%8C%81这样冗长且难以阅读的字符。这既不美观,复制给别人时也很像垃圾链接。- 空格: 如果文件名包含空格,在 URL 中会被转换为
%20,同样影响美观和阅读。
- 空格: 如果文件名包含空格,在 URL 中会被转换为
-
SEO(搜索引擎优化)友好: 搜索引擎(如 Google、Baidu)更容易解析使用短横线
-分隔的英文单词。相比下划线_,短横线被搜索引擎明确识别为“空格/分词符”。 -
跨平台兼容性: 不同的操作系统(Windows、macOS、Linux)和服务器对大小写字母的敏感度不同。统一使用小写可以彻底避免因为大小写不匹配导致的“网页 404 找不到”错误。
截图案例改造对比
以你截图中的几个文件为例,如果改成网页友好的格式:
| 现在的笔记名 (不推荐做 URL) | 推荐的文件名 (URL Friendly) |
|---|---|
API版本管理 | api-version-management |
AstroNvim安装opencode插件 | astronvim-install-opencode-plugin |
Azure学生优惠机器使用 | azure-student-discount-guide |
box-shadow详解 | box-shadow-tutorial |
核心痛点解决:文件名改英文了,我在 Obsidian 里怎么找?
你可能会担心:如果文件名全变成了英文,平时在 Obsidian 里搜索和阅读会变得非常痛苦。
完美的解决方案是:分离“文件名”和“显示标题”。
现代的网页生成工具(如 Quartz)和 Obsidian 本身都完美支持 YAML Frontmatter (属性/元数据)。
你可以保持文件名为纯英文小写,然后在笔记的最开头添加属性信息:
YAML
---
title: API版本管理
aliases:
- API版本管理
date: 2026-03-01
---
这样做的好处:
- 网页端: 生成的网页链接干净漂亮(如
yoursite.com/api-version-management),但网页顶部显示的 H1 标题会读取title属性,显示为完美的中文“API版本管理”。 - Obsidian 端: 借助
aliases(别名),你在 Obsidian 里输入[[api-version-management]]依然能瞬间搜索并链接到这篇笔记,完全不影响你的中文写作心流。