博客域名更换记录以及衍生问题解决方案

本文涉及的产品
.cn 域名,1个 12个月
简介: 拖延了半年后,我终于在最近把我的域名 https://shanyue.tech> 通过了备案,趁此对我的域名进行更换: 由 更换到了 如果刚开始就使用新域名,倒是很简单。但是更换域名就需要做一些额外的琐碎的东西了,如 https,反向代理,SEO需求等等,记录一下 本文地址: https://shanyue.

拖延了半年后,我终于在最近把我的域名 https://shanyue.tech> 通过了备案,趁此对我的域名进行更换: 由 更换到了

如果刚开始就使用新域名,倒是很简单。但是更换域名就需要做一些额外的琐碎的东西了,如 https,反向代理,SEO需求等等,记录一下

本文地址: https://shanyue.tech/post/domain-update-record/

https

在制作证书时在 domains 中添加新域名

certbot -d shanyue.tech -d xiange.tech -d *.shanyue.tech -d *.xiange.tech ...

reverse proxy

在反向代理中使用新域名代替旧有域名,以下是 traefik 在 docker 的 compose file 的示例,同时需要保留新老域名

version: "3"
services:
  blog:
    build:
      context: .
    restart: always
    labels:
      - "traefik.old.frontend.rule=Host:blog.xiange.tech"
      - "traefik.blog.frontend.rule=Host:shanyue.tech"

301 & SEO

为了防止使用旧网址打开失败,需要进行301重定向,重定向之前思考两个问题

  1. 为什么不使用 302
  2. 为什么不给站点设置多个 domain

答案是为了 SEO,使用 301 可以把搜索引擎原域名的收录给带过去,而使用多个 domain 会降低页面的权重

百度给的建议是新旧网站并存一段时间,然后进行 301

version: "3"
services:
  blog:
    build:
      context: .
    restart: always
    labels:
      - "traefik.old.frontend.rule=Host:blog.xiange.tech"
      # 重定向至新域名
      - "traefik.old.frontend.redirect.regex=^https?://blog.xiange.tech/(.*)"
      - "traefik.old.frontend.redirect.replacement=https://shanyue.tech/$$1"

      # 设置永久重定向: 301
      - "traefik.old.frontend.redirect.permanent=true"

sitemap.xml & robots.txt

这两个是为了 SEO,当站点新添了页面,可以使用 sitmeap 更好地通知搜索引擎的小蜘蛛们,方便新页面更快的收录

需要更改 sitemap 中 的 url.loc 的绝对地址为新域名,以下是一个 sitemap 的样例,你也可以通过 https://shanyue.tech/sitemap.xml 访问

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://blog.xiange.tech/post/login-input-style/</loc>
    <lastmod>2019-04-23T11:12:38+08:00</lastmod>
  </url>`
</urlset>

依赖应用

在我博客的评论系统中使用了 github 的 OAuth Apps,需要更改主页及回调地址

  • Homepage URL
  • Authorization callback URL

总结

鉴于只是一个简单的博客,应该没有什么工作量了

如果域名需要 SEO,也就比较麻烦些,如果不需要的话,基本可以使用 nginx 或者 traefik 配置多个域名就可以了

目录
相关文章
|
7月前
WordPress网站更换域名后如何重新激活elementor
本文讲解WordPress网站更换域名后如何重新激活elementor。首先你需要在WordPress后台elementor下点击Disconnect断开原elementor连接,然后登录elementor官网,在后台解除原网站授权;接着在WordPress后台重新连接并激活elementor。
605 2
WordPress网站更换域名后如何重新激活elementor
|
7月前
设置博客域名跳转实现方案(免费版)
设置博客域名跳转实现方案(免费版)
90 1
|
7月前
|
域名解析 缓存 网络协议
【域名解析DNS专栏】IPv6与DNS:兼容性挑战与解决方案
【5月更文挑战第29天】随着IPv6逐渐成为互联网主流,DNS面临兼容性挑战,包括解析机制差异、资源记录类型扩展和查询流程优化。为解决这些问题,可采取升级DNS系统以支持IPv6、部署双栈DNS服务和优化DNS缓存策略。通过这些措施,可确保IPv6环境下的域名解析顺利进行。
670 1
|
3月前
|
网络协议 开发工具 git
hexo github部署,通过域名访问你的博客
本文介绍了如何使用Hexo命令部署博客到GitHub,并详细说明了如何通过自定义域名访问GitHub上部署的博客。
hexo github部署,通过域名访问你的博客
|
7月前
|
域名解析 缓存 运维
【域名解析DNS专栏】域名解析故障排查手册:常见问题与解决方案
【5月更文挑战第22天】【DNS故障排查手册】解决域名无法解析、速度慢、污染劫持及配置错误问题。检查网络、清理缓存、更换DNS服务器、使用HTTPS、DNSSEC及CDN。示例:使用nslookup查询域名解析。定期检查优化DNS服务器,确保稳定安全。
1287 4
【域名解析DNS专栏】域名解析故障排查手册:常见问题与解决方案
|
域名解析 网络协议
如何为树莓派上的WordPress博客网站配置自己的域名,并且外网可访问?
如何为树莓派上的WordPress博客网站配置自己的域名,并且外网可访问?
|
7月前
|
网络协议
hexo博客6:自定义域名 购买、配置、更新部署
hexo博客6:自定义域名 购买、配置、更新部署
72 3
|
网络协议 安全
hexo博客5:更新部署&域名配置
hexo博客5:更新部署&域名配置
130 0
|
PHP Windows
php环境部署:phpstudy设置本地测试域名找不到hosts文件的解决方案
php环境部署:phpstudy设置本地测试域名找不到hosts文件的解决方案
250 0
|
域名解析 网络协议
【亲测有效】Ubuntu18.04 sudo apt update无法解析域名的解决方案
【亲测有效】Ubuntu18.04 sudo apt update无法解析域名的解决方案
3779 1