# Lovable 多语言网站：中英文各有独立地址，切换语言后保留当前页面

六页本地HTML路由实测同篇语言切换与缺翻译显式回退，lang/canonical/hreflang可回读；未部署或验证收录。

## 环境



## 启动

~~~sh
cd reference
python3 -m http.server 8787
~~~

## 七步操作

1. 准备双语路由

练习提供中英文各三条本地页面路由，指南和上传文章有逐篇对应，only条目用于缺少翻译的反例。输入是原创静态HTML，不需要Lovable账号才能运行参考。

2. 设置页面语言

每条路由设置正确html lang与独立canonical示例地址。example.invalid只表示你以后需要替换的站点域名，不能直接当作生产canonical发布。

3. 声明对应版本

对真实互译的指南与上传文章设置双向hreflang，并指向对应语言同篇文章。没有逐篇翻译的only页不假装拥有等价版本。

4. 保持文章切换

从中文上传页切换到英文上传页，保留文章标识与现有查询参数。语言按钮不应每次直接跳首页，丢掉读者正在看的内容。

5. 处理缺少翻译

访问只有本语言说明的条目，界面明确提示没有逐篇翻译，语言切换回到另一语言指南。回退是导航行为，不作为该页面的等价hreflang。

6. 核对HTML头

在浏览器实际导航后回读HTML head，检查lang、自指canonical与互译两端链接。HTTP200只证明页面可访问，不证明搜索引擎已经收录。

7. 发布前逐对检查

下载六页源码并替换示例域名，再对每一对互译页面复核。本文没有运行Lovable账号生成、上线部署或Google排名测试。

## 目录身份

- starter：待完成的任务接口与原创输入，TODO不是已完成实现。
- reference：作者原生完成参考和实际产物。records.json/browser-result.json为本地实测记录，不是AI助手回复。
- TASK.md：可交给相应AI助手的原始任务合同。该助手账号生成会话未运行。

## 依赖与许可

原创教学代码以MIT许可提供。第三方项目、模型及浏览器遵循其自身许可。第三方依赖由本地安装获取，不包含node_modules、模型权重、WASM运行时、数据库、缓存或凭据。

## 官方依据

- https://developers.google.com/search/docs/specialty/international/localized-versions
