Typecho迁移Hugo设置301跳转的方法(附Vercel设置301方法)
使用Hugo替换了Typecho之后,会有一系列的SEO问题,比较严重的就是404了,因为生成的某些URL可能会和之前不一致。
本文分享几个用到的方法,尽可能的减少SEO的流量损失。
URL能不变就不变
这是首要原则,Hugo默认的URL会和我们之前的伪静态不太一致。有一个比较有用的参数:
uglyurls = true
用这个可以生成.html
的格式。
Nginx
Nginx 设置301示例:
server {
listen 80;
server_name www.nocmt.com;
return 301 http://nocmt.com$request_uri;
}
Apache
示例,老域名转新域名
RewriteEngine on
RewriteCond %{HTTP_HOST} ^oldsite.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com [NC]
RewriteRule ^(.*)$ https://newsite.com/$1 [L,R=301,NC]
Vercel
Vercel项目可以在根目录下放置一个vercel.json
,也可以实现301跳转,我使用的是这种方式,参考官方配置文档
如https://yqc.im/xxxxx.html
跳转https://yqc.im/xxxxx/
,代码如下:
{
"redirects": [
{
"source": "/:slug\\.html",
"destination": "/:slug/"
}
]
}