Skip to content

Redirect the docs root to the English landing - #187

Draft
majinghe wants to merge 1 commit into
mainfrom
cursor/docs-root-seo-redirect-a0c0
Draft

majinghe wants to merge 1 commit into
mainfrom
cursor/docs-root-seo-redirect-a0c0

Conversation

@majinghe

Copy link
Copy Markdown
Collaborator

Summary

https://docs.rustfs.com/ was a language-picker page with noindex, follow, so links to the docs root never landed on an indexable document. Language docs already live at /en, /zh, and the other locale paths, and locale-less paths such as /installation already 301 to English.

This change makes / a permanent redirect to /en (this site's canonical form, without a trailing slash) and strengthens the English and Chinese home-page metadata.

  • public/_redirects and the redirect build pin / and /index.html to /en with status 301. Cloudflare static assets apply _redirects before the file, so the chooser is no longer the root response. The worker reads the same file.
  • public/index.html stays a noindex fallback, with a canonical link to https://docs.rustfs.com/en. Its Accept-Language script still runs only if a host serves that document instead of the redirect.
  • English and Chinese home titles and descriptions now cover installation, the S3 API, Kubernetes, erasure coding, MinIO-compatible migration, and cluster operations, using wording already used in the docs.
  • The sitemap lists language URLs, gives /en priority 1 and /zh priority 0.9, adds x-default to the English URL, and does not list the thin root. robots.txt still allows / and points at the sitemap.

Verification

Local worker in front of dist/public (same _redirects the build uploads):

curl -sI http://127.0.0.1:8765/
HTTP/1.1 301 Moved Permanently
location: http://127.0.0.1:8765/en

curl -sI "http://127.0.0.1:8765/?utm_source=docs"
HTTP/1.1 301 Moved Permanently
location: http://127.0.0.1:8765/en?utm_source=docs

curl -sI http://127.0.0.1:8765/index.html
HTTP/1.1 301 Moved Permanently
location: http://127.0.0.1:8765/en

English landing (/en):

  • title: RustFS Documentation | S3-Compatible Object Storage
  • description: Install and operate RustFS, an S3-compatible distributed object storage system, including the S3 API, Kubernetes, erasure coding, MinIO-compatible migration, and cluster operations.

Chinese landing (/zh):

  • title: RustFS 文档 | 兼容 S3 的对象存储
  • description: 了解如何安装和运维兼容 S3 的分布式对象存储 RustFS,包括 S3 API、Kubernetes、纠删码、兼容 MinIO 的迁移和集群运维。

Checked in a browser after the redirect: the English and Chinese home pages render those titles and descriptions on desktop and a 390px-wide viewport, and the install cards still show.

Sitemap after build: 940 URLs, no https://docs.rustfs.com/ entry, /en priority 1, /zh priority 0.9, hreflang="x-default" points at /en. Three dynamic redirect rules, under Cloudflare's limit of 100.

Commands: npm run docs:check, npm run build, npm run test:worker (18 passing, including the built _redirects), and npm run test:search (21 passing).

Open in Web Open in Cursor 

Give every client a permanent redirect from / to /en, and describe the English and Chinese home pages with the install, S3, Kubernetes, erasure coding, and operations topics they cover.

Co-authored-by: hector <majinghe@users.noreply.github.com>
@vercel

vercel Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
docs-rustfs-com Ready Ready Preview Oct 22, 2026 2:39am UTC

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
rustfs-docs b9ebd9d Commit Preview URL

Branch Preview URL
Oct 22 2026, 02:42 AM

This branch was successfully deployed

1 active deployment
Preview — b9ebd9dc Deployed Oct 22, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants