之前的域名上线了快2个月了,百度还是每天怕但就是不收录,没办法,写了这么多年的博客,一直不在乎流量的我现在也像百度低头了,中文站来说,百度的流量还是没办法忽视的,于是趁着腾讯云送的2000元代金券快要到期这个机会,抓耳挠腮绞尽脑汁又注册了一个域名,也就是现在这个,怕自己会后悔又想半路换域名,于是一下子就注册了5年,加上买的三年的香港服务器,到时候就算服务器到期,域名都没到期,也不知道能不能坚持写下去。
之前的域名注册的时候没想到之前被人拿去种菠菜了,搞得百度不收录,360不收录,微信中访问也被屏蔽了,等了一个多月,实在是没耐心了,不相等下去了,与其等百度及微信放出来,还不如注册一个新的域名重新来过,谁知道度娘什么时候才心情好把就域名放出来。
除了更换域名,启用这个域名的时候,我顺便把这个站点的URL结构更换了一下,从之前的域名/分类名/文章名换成了域名/post/文章名,这就导致新老域名不能直接301跳转,如果不调整Nginx的配置,那从之前URL过来的请求会全部404,于是在更换域名的时候又顺便学了下Nginx的正则匹配,原以为会有点麻烦的,花了一个小时左右包学习包测试就搞定了,这里贴一下相应的URL正则匹配并跳转部分配置:
location /{
if ( $uri ~* /(.*)/(.*)\.html ){
set $suffix $2;
rewrite '^/(.*)/(.*)\.html$' https://cloudbool.com/archive/post/$2.html permanent;
}
rewrite ^/(.*)$ https://cloudbool.com/archive/$1 permanent;
}
学习过程学习了一下Nginx的正则配置,上述配置就是通过匹配Nginx自带的全局变量$uri,然后用正则匹配出文章URL部分,再通过rewrite跳转到加上文章URL新域名相应的URL,这样从原有的URL跳转过来也能访问到正确的URL不会导致大片的404。
因为我还更改了URL结构,所以在新站数据导入的时候,之前在文章引用里面写死的URL也要响应替换,还好我之前写死的URL不多,通过Vim简单替换就能搞定,全部替换URL结构之后再导入新站数据就算转换成功了。