这两天按照FanVinga的教程把这个Blog折腾着建起来了。虽然前前后后遇到的问题不少,但是幸好有FanVinga的帮助,一直帮我解决这些操作中和使用上出现的小白问题。
在基本上搞清楚了这些问题的解决方式之后,我决定写个备忘录。免得出现了问题之后反复的去麻烦别人解答。
建站的时候需要注意的
取得VPS的root权限。
-
我自己用的VPS是暂时免费谷歌云(GCP),GCP默认是不允许用密码来登陆SSH的。但是为了以后rsync更新的方便,首先要用HyperApp里面的 SSH keys 将Mac上的ssh秘钥替换掉。
-
首先在Mac的终端执行
ssh-keygen
然后一路回车,执行完之后,再执行
open ~/.ssh
这时候Mac的Finder会出来一个名字叫.ssh的文件夹,里面有三个文件,可以用文本编辑打开。
- 将id_rsa文件里面的内容替换为HyperApp的 更多>SSH Key 里面的最后一项Private Key的内容,然后保存。
- 接着将id_rsa.pub文件里面的内容替换为HyperApp的 更多>SSH Key 里面的第一项Actions的复制公钥的内容,然后保存。
- 接下来去VPS的ssh执行
sudo su
就可以用root权限来进行操作了。
HyperApp需要TF版本
不是TF版本的话,现阶段的HyperApp会出错的。
在Telegram里面私聊群主,附上购买凭证和通讯邮箱,群主会处理的
写新文章的时候需要注意的
Hugo建立的静态网页里面的文章都是.md格式的。但是每篇文章最顶端的那部分用的却是.toml的格式。(图片中的部分)
- 在Ulysses里面写文章,特别要注意在文章最顶端的部分单双引号的区别。
- 请在Ulysses的 编辑 > 替换 里面将那些智能选项全部关闭。
-
在Typora里面写完全没问题。
- 在MacDown里面写也没问题。
更新的时候需要注意的
- 我个人采用的是rsync方法,让Dorpbox里面的Mysite文件夹与VPS上同步。在Mac的终端执行本地命令
rsync -av --delete -e 'ssh -p ssh端口默认22' ~/Dropbox/Mysite/ VPS用户名@VPS地址:/srv/docker/Hugo/
然后再回到Hyperapp里面对Hugo进行更新配置的操作。
- 在采用rsync更新之前,一定要开终端单机跑一次!一定要开终端单机跑一次!!一定要开终端单机跑一次!!!重要的事情说三遍。
进入/Mysite之后运行命令
hugo server
-
跑完确认没任何问题了,再执行命令。
-
要采用上传.zip更新的方式的话,首先把Mysite文件夹压缩成.zip文件,然后在Mac的终端执行本地命令
scp -P 本机ssh端口 本机上Mysite.zip的路径 VPS登录用户名@VPS服务器地址:/srv/docker
来把Mysite.zip上传到服务器的/srv/docker目录下面。
接着执行命令
unzip Mysite.zip && mv Mysite Hugo
Hugo出现restarting(1)xx second ago的时候该怎么办
出现restarting(1)xx second ago的情况是没有启动成功,或者是主题的名字错误造成的。
- 如果是主题名字错误,那么进入VPS的终端,执行
ls /srv/docker/Hugo/themes/
看Themes文件夹里面的主题文件夹的名称和在HyperApp里面填写的名称是否完全一致。
如果一致,那就修改HyperApp里面的Themes的名称。
-
如果主题是对的,那就检查HyperApp里面Hugo的日志。一般来说,会是新写的文章里面有问题,而且基本上就是文章顶端的某些字符不符合.toml的格式的问题。
- 这个比较好解决,单机跑一次,看清楚是哪篇文章的第几行在报错,找到位置做相应的修改就是了。
-
如果单机跑了没问题,Hyprrapp里面也进行了Hugo的配置更新,甚至重启Hugo之后仍然显示restarting(1)xx second ago的话,那么就采用一个比较简单粗暴的方式来解决。
-
首先要保证单机上运行起来完全正常!!!
- 然后进入VPS的ssh,执行
-
cd /srv/docker/Hugo && rm -rf
把网站的内容全部清空。
- 接着在Mac的终端执行本地执行命令
rsync -av --delete -e 'ssh -p 你的ssh端口默认22' ~/desktop/放到桌面的Mysite文件夹名字/ VPS用户名@VPS地址:/srv/docker/Hugo/
-
然后再回到Hyperapp里面对Hugo进行更新配置的操作。
-
打开浏览器,刷新缓存之后输入域名。
-
这时候应该可以看到主页了。
--- --- ## 最后总结一下
用Hugo建站,一定要在单机上运行起来完全没有问题之后才能在Mac的终端里面执行同步命令。
不能像Wordpress那样,以为在后台搞完了就可以直接发布出去,发现有了问题再修改。
当然,如果条件允许的话,可以在单机运行的同时写文章,毕竟是实时更新的。这样也可以更直观地看到网页上显示的效果。