http://leidar.ren

  • 利用腾讯云解决hexo静态网站开发疑难:
    1. windows环境部署麻烦,易出错
    2. 单主机中毒/坏了之后,只剩部署在服务器上的html页面,_postmarkdown文件丢失
    3. 多主机(笔记本+台式机)协同开发同步麻烦,MacBook air sftp upload不友好
    4. npm慢,下载插件易崩溃
    5. 网页加载缓慢,考虑切入CDN,但切入CDN之后,缓存刷新慢,不利于开发
    6. 图床,如七牛云取消测试域名之后崩溃问题
    7. 部署nginx私有服务器过期,宕机问题

思考问题

  1. git对于public文件夹管理,没有存储_post文件夹,所以容易丢失文件,而且配置麻烦,只是因为网上的教程较多。
  2. 多机开发如果用windows连接macbook,会遇到fstp写入问题,没有谷歌到较好的解决方案,这里直接绕过了。
  3. nginx配置复杂,npm版本管理门槛较高,这里都可以稍作绕过。
  4. CDN缓存刷新慢可以在服务端使用hexo -s进行预览。

解决方案

  1. 使用云主机部署hexo,解决npm下载慢,windows部署麻烦问题。refer

    1
    2
    3
    4
    sudo yum -y install git gcc gcc-c++ curl wget
    sudo yum install npm
    npm install -g hexo --save
    hexo init blog
  2. vscode安装fstp, 配置同步路径,忽略node_modules文件夹的同步

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    {
    "protocol": "sftp",
    "host": "ip路径",
    "port": 22,
    "username": "root",
    "password": "密码",
    "remotePath": "/root/blog",
    "uploadOnSave": true,
    "ignore": [
    ".vscode",
    ".git",
    ".DS_Store",
    "node_modules"
    ]
    }
  3. 安装hexo-deployer-cos, 将博客部署到cos上,配置域名,进行CDN加速。 refer

    1
    npm install hexo-deployer-cos --save
  4. 使用 SCF 自动刷新被 CDN 缓存的 COS 资源。 refer

其他问题及解决方案

  1. 腾讯云cosfs的上传文件默认为application/octal-stream,需要手动改为对应文件,否则无法打开,故使用cos-browser上传
  2. 腾讯云产品线和阿里云产品线用一家是最好的,我一开始两边都使用了, 结果是各种组件文档耦合性差,然后逐步迁移到腾讯云上面。
  3. 子域名路由,采用根域名静态页面+nodeppt生成
  4. 腾讯云服务器默认端口不包括4000,需要在安全组添加配置
  5. chrome对于静态页面缓存,用无痕窗口打开。