解决图片指向localhost的问题
在本地环境中调试完毕之后,我将整个网站推送到了git 上,并且在阿里云ecs 服务器上拉取了这个仓库。 在拉取成功后,我用hugo server –bind 0.0.0.0 命令启动了它。
但是在通过 ip:host 访问它时, 我发现博文都可以正常拉取,但是图片却不可以, 并且图片的路径都很奇怪地指向了localhost:1313/images/path。
从浏览器控制台中拷贝出的获取图片的curl 如下,可以看到是尝试从localhost获取的。
curl 'http://localhost:1313/images/dream.jpg' \
-H 'sec-ch-ua: "Not A(Brand";v="99", "Google Chrome";v="121", "Chromium";v="121"' \
-H 'Referer: http://123.57.26.103:1313/' \
-H 'sec-ch-ua-mobile: ?0' \
-H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36' \
-H 'sec-ch-ua-platform: "macOS"' \
--compressed
在和文心一言机器人做了友好交谈之后,我发现原来hugo server 命令是用来 本地开发和调试 的, 在生产环境中, 不推荐 使用内置的 web 服务器(通过 hugo server 启动), 而需要使用专业的 Web 服务器来托管静态文件。
在ubuntu 上安装部署Nginx
安装没什么说的,这里我用的是work 用户,所以使用如下命令安装:
sudo apt install nginx
因为我之前没有使用过nginx😅,所以这里还是老办法,和文心一言聊一聊,这部分细节就不再给出, 最终在成功安装并配置了nginx 之后,可以通过ip:port 访问我的博客啦,可喜可贺,可喜可贺🎉