使用 URL 路径的客户端网站本地化

Client-side Website Localization Using URL Path

我正在对我最近建立的网站进行本地化 - https://xmllint.com

这个项目很小,我主要用它来自学 javascript 以及 Webpack 和其他与网络相关的 technologies/frameworks。

该网站 100% 基于浏览器,内容不多。出于这个原因,我决定使用这个 来翻译内容本身。

用 'real' 内容替换占位符是通过 HTML 底部的 javascript 进行的。最终我想在页面呈现之前准备好内容。只是为了让搜索引擎能够很好地索引新页面。

我想要实现的是页面本身从 URL 中检测语言代码(例如,https://xmllint.com/es/ 表示西班牙语),然后根据该值执行翻译。

我正在苦苦挣扎的是如何处理网页本身的 URL 部分,因为目录本身不直接存在于服务器上。

到目前为止,我尝试将所有 HTTP 404 代码重定向到 index.html 文件本身(在托管端)- 按照 SPA 的建议。 这导致我加载资源时出现问题,因为相对路径现在包含 URL.

的语言代码部分

想到了两个想法。

  1. 改进当前的 Webpack 构建,以便我只提供包含所有资产的 单个 文件。这样我就不会有相对路径的问题,我应该很好。 (Is Single page application just one page using for entire web application?)
  2. 要不要引入一个像Vue这样的路由框架?

不是要的是

  1. 如何解析 URL 本身。
  2. 出于 SEO 的原因,我也不想使用 URL 参数。
  3. 骇人听闻的想法或解决方法。我没有时间压力,想知道如何做到最好。

非常感谢help/ideas。

在您没有时间压力的情况下,我个人建议使用 JavaScript 框架 - 或者更具体地说 - Vue.js。既然你已经提到了它,我想你已经对它有了基本的了解。

我看到了从选择这条道路中受益的各种方式:

  • 您面临的实际问题将不再是问题。该应用程序将处理所有路由,因此您只需 return index.html 就可以了
  • 开发人员体验(构建过程、热重载、部署...)将显着改善您的日常工作
  • 您的包大小很可能会减少
  • 您已为应用程序的未来发展做好准备
  • 最重要的是:您正在通过使用您可能没有太多经验的技术来挑战自己。就我自己而言,这应该是足够的理由。 :-)

编码愉快!