博客迁移服务器更换域名之后图片无法显示怎么办?

今天给我的博客迁移了一下服务器,并且更换了域名,发现图片无法显示,记录一下,白嫖的一年.codes域名续费天价,呵呵哒😅

迁移步骤完全按照官方的doc,导出~/.halo2,到新服务器上重新安装之后替换新生成的~/.halo2,然后使用ip:端口访问,到这里一切正常

接着继续按照doc写的方式使用oneinstack安装nginx设置了反代,用域名打开网站,发现图片都无法显示了,推测应该是nginx的配置文件出现了问题

按照官方的doc:

  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
    proxy_pass http://halo;
    expires 30d;
    access_log off;
  }
  location ~ .*\.(js|css)?$ {
    proxy_pass http://halo;
    expires 7d;
    access_log off;
  }

只在这两个转发下设置了proxy_pass http://halo 其实oneinstack的默认nginx配置文件里还有一个转发

location ~ .*\.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|swf|flv|mp4)$ {  
  proxy_pass http://halo;
  valid_referers none blocked *.55.72.249 120.55.72.249;  
  if ($invalid_referer) {  
  return 403;  
  }  
}

这里也需要添加一行proxy_pass http://halo 之后重启服务即可,打开网站发现图片已经能够正常显示

Q.E.D.