问题描述
我有一个使用 Jquery Boostrap 和 Firebase 的 HTML CSS JS 网站。我没有服务器端代码。 这是一个有 20 篇文章的平台。
使用 URL 参数,我获取文章的 id 并通过 DB 动态替换标题、描述、照片 URL 等... 这是一个链接: https://visite-ton-ecole.fr/visiter.html?ec-nantes
Google 不会 SEO 引用我的每个 URL 参数以及我的每篇文章。所以我想重写网址
来自: https://visite-ton-ecole.fr/visiter.html?ec-nantes
https://visite-ton-ecole.fr/visiter.html?my-school
到:https://visite-ton-ecole.fr/visiter/ec-nantes
https://visite-ton-ecole.fr/visiter/myschool
我已经看到它被称为永久链接,并且像 wordpress 这样的 CDN 在创建新文章时会自动执行此操作。 我已经看到您可以使用 .htaccess 做到这一点:
RewriteEngine On
RewriteRule ^/?visiter/([^/d]+)/?$ visiter.html?$1 [L,QSA]
这个 .htaccess 确实有效,但是当页面完全加载时,它会自动重定向到我的服务器根目录。
使用 .htaccess 好吗?或者还有其他解决方案,例如服务器端解决方案?
解决方法
如果您更改 URL 格式,则浏览器会看到新格式的 URL,而不是旧格式。
您在浏览器中运行的 JavaScript 也会看到新格式的 URL,而不是旧格式。
如果您的 JavaScript 仍在尝试解析 URL,就好像它是旧格式一样(即从查询字符串中获取数据),那么它不会找到它。
您需要更新 JavaScript 以使其能够处理新的 URL 格式。