知识库 / 阶段 3 · 技术 SEO 与开发协作 / 搜索引擎优化(SEO) ↗ / 第 026 节
🔄 网站开发静态路由设计
网站开发静态路由设计(视频站也可以参考)#
1. 路由设计目标#
-
统一 URL 风格(避免重复收录、权重分散)
-
有利于 SEO(清晰、可读、可被搜索引擎理解)
-
可扩展(支持分类、分页、标签、多级目录)
-
前后端易维护
-
静态伪静态均可兼容
2. URL 基础规范#
2.1 是否以 / 结尾(统一规范)#
采用行业最佳方案:
| 类型 | 是否以 / 结尾 | 理由 |
| 首页 | / | 标准 |
| 分类(目录) | /cid/28/ | 目录语义 |
| 标签(目录) | /tag/xxx/ | 目录语义 |
| 分页 | /cid/28/page/2/ | 目录语义 |
| 文章内容 | /post/13697 | 文件语义 |
| 用户页 | /user/12345 | 文件语义 |
| 搜索页 | /search?q=xxx | 文件语义 + 参数 |
| 错误页 | /404 | 文件语义 |
3. 全局 URL 设计原则#
3.1 原则 1:简单、短、可读#
避免:
/category_id=28_list_page_2.html
推荐:
/cid/28/page/2/
3.2 原则 2:小写字母唯一#
URL 中:
-
全部小写
-
不用中文、空格、大写
-
使用连字符“-”代替空格
3.3 原则 3:语义明确#
URL 见名知义,例如:
/post/12345
/user/8888
/tag/lol/
3.4 原则 4:路径层级不超过 3 层#
搜索引擎建议:
/cid/28/page/2/
超过 4 层会影响抓取效率。
4. 各模块静态路由规则(完整版)#
4.1 首页#
/
指定 canonical:
<link rel="canonical" href="https://www.xxx.com/">
4.2 分类页(目录)#
/cid/{category_id}/
示例:
/cid/28/
/cid/3/
推荐扩展#
分类别名:
/category/yule/
/category/news/
4.3 分类分页#
/cid/{id}/page/{page}/
示例:
/cid/28/page/2/
4.4 标签页(目录)#
/tag/{tag_slug}/
示例:
/tag/王者荣耀/
/tag/网红黑料/
(英文化更好:/tag/wangzherongyao/)
4.5 标签分页#
/tag/{tag}/page/{page}/
4.6 文章内容页【视频播放页】(文件语义)#
/post/{article_id}
示例:
/post/13697
如需更友好 SEO,可:
/post/13697-yixing-agri-video
4.7 用户首页#
/user/{uid}
示例:
/user/3681532
4.8 用户文章分页#
/user/{uid}/page/{page}/
4.9 搜索页(带参数)#
/search?q=关键词
无分页:
/search?q=xxx&page=2
4.10 作者页(可选)#
/author/{name}/
或用 ID:
/author/23/
4.11 全站 RSS(经验推荐)#
/rss.xml
4.12 API(可隐藏)#
/api/get-post?id=xxx
4.13 错误页#
/404
/500
不加斜杠,更符合文件语义。
5. Canonical 规范化设计(避免重复收录)#
示例:内容页
<link rel="canonical" href="https://www.xxx.com/post/13697">
分页页:
<link rel="canonical" href="https://www.xxx.com/cid/28/">
禁止 canonical 指向其他分页页。
6. Sitemap 设计#
/sitemap.xml
/sitemap-post.xml
/sitemap-category.xml
/sitemap-tag.xml
首页 sitemap.xml 作为总入口。
7. Robots.txt 建议#
User-agent: *
Disallow: /api/
Disallow: /admin/
Sitemap: https://www.xxx.com/sitemap.xml
8. Nginx 伪静态规则模板(可直接用)#
文章页#
location ~ ^/post/([0-9]+)$ {
rewrite ^/post/([0-9]+)$ /index.php?m=post&id=$1 last;
}
分类页#
location ~ ^/cid/([0-9]+)/$ {
rewrite ^/cid/([0-9]+)/$ /index.php?m=cid&id=$1 last;
}
分页#
location ~ ^/cid/([0-9]+)/page/([0-9]+)/$ {
rewrite ^/cid/([0-9]+)/page/([0-9]+)/$ /index.php?m=cid&id=$1&page=$2 last;
}
9. 路由冲突防止策略#
避免如下冲突:#
-
/post/123/ 与 /post/123/edit
-
/tag/xxx/ 与 /tag/xxx-article/
-
/user/888/ 与 /user/login/
解决:
所有功能性路径使用英文字母,不用数字:
/user/login
/user/logout
/user/settings
数字只用于资源:
/user/123
/post/155
10. 路由版本维护策略#
-
不在 URL 中出现“版本号”
-
不轻易更改已发布的 URL(只允许扩展,不允许改动)
-
如需改动,用永久 301 指向新 URL
总结#
本方案设计的 URL 体系特点:
✔ 规范统一
✔ 目录与内容语义清晰
✔ 兼容 SEO
✔ 可升级为 SPA 或 SSR
✔ 可直接映射后端路由
✔ 可直接生成 Nginx rewrite