在浏览器本地处理 · 不上传任何内容
1. 导入 CSV
5 行 · 3 列 · 分隔符 "," · 在你的浏览器里处理
Slug 选项
分隔符与大小写连字符 - · 小写
分隔符
音译ASCII · 拼音
长度不限
只在单词之间截断,不会把一个单词切成两半。
停用词关闭
符号转成单词
Base URL选填
在每个 slug 下面预览完整的页面地址。
2. 预览与下载
| # | title | old_url | slug | url |
|---|---|---|---|---|
| 1 | Crème Brûlée & Café: The Complete Guide | /blog/post?id=101 | creme-brulee-and-cafe-the-complete-guide | /creme-brulee-and-cafe-the-complete-guide |
| 2 | 10 Tips for Writing SEO-Friendly URLs | /blog/post?id=102 | 10-tips-for-writing-seo-friendly-urls | /10-tips-for-writing-seo-friendly-urls |
| 3 | Straße, Ärger und Übermut | /blog/post?id=103 | strasse-arger-und-ubermut | /strasse-arger-und-ubermut |
| 4 | 10 Tips for Writing SEO-Friendly URLs | /blog/post?id=104 | 10-tips-for-writing-seo-friendly-urls-2 | /10-tips-for-writing-seo-friendly-urls-2 |
| 5 | Multi-line title cell | /blog/post?id=105 | multi-line-title-cell | /multi-line-title-cell |
3. 301 重定向规则
RewriteEngine On
RewriteCond %{QUERY_STRING} ^id=101$
RewriteRule ^blog/post$ /creme-brulee-and-cafe-the-complete-guide? [R=301,L]
RewriteCond %{QUERY_STRING} ^id=102$
RewriteRule ^blog/post$ /10-tips-for-writing-seo-friendly-urls? [R=301,L]
RewriteCond %{QUERY_STRING} ^id=103$
RewriteRule ^blog/post$ /strasse-arger-und-ubermut? [R=301,L]
RewriteCond %{QUERY_STRING} ^id=104$
RewriteRule ^blog/post$ /10-tips-for-writing-seo-friendly-urls-2? [R=301,L]
RewriteCond %{QUERY_STRING} ^id=105$
RewriteRule ^blog/post$ /multi-line-title-cell? [R=301,L]提示:在选项里设置 Base URL,目标地址就会是绝对 URL。
上传一份页面标题 CSV,这个批量 URL Slug 生成器会给每一行加上干净的 slug 和完整 URL。如果再选一列旧 URL,内置的 301 重定向生成器会同时生成 Apache、Nginx 或 Cloudflare 的重定向规则。整个批量处理都在浏览器里用 JavaScript 完成:不需要账号,文件不上传,服务器上也不保存任何数据。
使用步骤
批量 CSV Slug 生成器怎么用
适用场景

CMS 迁移
从 WordPress 搬到别的平台?一次重建所有 URL,并把旧地址全部重定向。

商品目录
把导出的商品清单,变成商店后台能用的商品链接(handle)。

内容排期
文章还没发布,就先给整张选题表定好统一的 slug。
重定向格式说明
Apache .htaccess
普通路径会生成 Redirect 301 /old-path https://example.com/new-slug 这样的行。带查询参数的旧 URL 会用 RewriteCond 和 RewriteRule,因为 Redirect 只匹配路径。
Nginx
每条规则是一个 location = /old-path { return 301 ...; } 块,放进你的 server 块里。带查询参数的旧 URL 改用 $request_uri 匹配。
Cloudflare Bulk Redirects
生成的 CSV 符合 Cloudflare 批量重定向列表的导入格式:源 URL、目标 URL、状态码 301,没有表头行。Cloudflare 的源 URL 不能带查询参数,所以查询参数会被去掉。
URL 迁移小贴士
- 把 Base URL 前缀设成你的正式站点,让重定向目标都是绝对地址。
- 每个旧页面都重定向到最接近的新页面,不要一律跳到首页。
- 避免重定向链:旧 URL 直接指向最终地址。
- 先在测试环境试几条重定向,再部署整份列表。
- 站内链接和 sitemap 也要同步改成新 URL。
完整的七步流程见 批量改 URL 并设置 301 重定向。
只想转换一份简单列表?用首页的 URL Slug 生成器。已经有新旧 URL 对照了?直接粘贴到 301 重定向生成器。
FAQ
常见问题
支持哪些 CSV 文件?
支持标准 CSV,逗号、分号或制表符分隔都可以。带引号的字段、引号里的逗号和换行,以及 UTF-8 BOM,都能正确处理。
Excel 能正常显示带重音的字符吗?
能。下载的 CSV 是带 BOM 的 UTF-8,Excel 会据此按 UTF-8 读取。
重复的标题怎么办?
开启「重复项自动编号」后,第二次出现的加 -2,第三次加 -3,依此类推,并且会跳过列表里已经存在的 slug。
一定要有旧 URL 列吗?
不用。旧 URL 列只在生成重定向规则时需要;没有它,照样能得到 slug 和 URL 两列。
我的 CSV 会被上传到服务器吗?
不会。文件完全在你的浏览器里用 JavaScript 读取和处理。不需要账号,数据不会上传,也不会保存在服务器上。
一次能处理多少行?
没有固定的行数上限。预览显示前 200 行,下载的文件包含所有行。特别大的文件取决于你设备的内存。
