Netlify站点部署静态博客

今天尝试把站点部署在Netlify上,因为部署在GitHub Pages上,国内访问速度太慢了,所以就尝试一下别的站点,部署成功之后发现速度还是不太行,后边继续找找原因

Netlify 部署的地址在这里

下图展示GitHub Pages站点和Netlify站点的全国网速对比(数据来源站长工具

总的来说,效果比GitHub Pages站点速度要快

问题记录

部署的时候,有几个问题,记录一下:

  1. 部署时告警信息直接就阻塞了部署进程,导致部署失败,猜测是一些类似代码扫描工具使然,然后我只得先把造成告警的 hexo-lazyload 插件给剔除掉,然后就可以了(还不了解Netlify的工作原理,只是临时处理方案)

以下是Netlify部署的部分日志信息

2:13:23 PM: $ hexo generate
2:13:23 PM: INFO Validating config
2:13:24 PM: INFO Start processing
2:13:24 PM: INFO neat the css: /opt/build/repo/source/_data/styles.styl [ 19.27% saved]
2:13:24 PM: INFO neat the css: /opt/build/repo/source/_data/variables.styl [ NaN% saved]
2:13:34 PM: WARN request remote img fail https://pic.imgdb.cn/item/63184ff316f2c2beb1e26ab9.png
2:48:42 PM: Build exceeded maximum allowed runtime
  1. Netlify部署成功之后,由于资源路径不正确,导致NexT主题不生效。我原先设置了路径 root: /blog/ ,然后就重新添加了一条记录,解析了一个新的二级域名用来访问博客,同时,这也给我带来了另外两个问题,如下:

  2. 原先站点 https://home.i-xiao.space/blog/ 上的不蒜子数据丢失了,重新初始化数据了。

“不蒜子”允许初始化首次数据,但是需要注册登录,目前“不蒜子”暂停了注册功能,那就先这样吧

  1. GitHub Pages站点不能正常访问。 给blog仓库设置 GitHub Pages,绑定心得个人二级域名,在发布分支gh-pages下面生成一个CNAME文件,用来存放个人二级域名。存在的问题是:hexo deploy 是把master分支下生成的public目录下的静态文件推送并覆盖gh-pages分支下的文件,因为每次生成的public目录下没有CNAME文件,所以CNAME文件就被冲掉了,造成的结果就是,每次自动部署都会把之前绑定的个人域名“解绑”,导致网站不能正常访问
  • 解决4:

方法一: 本地master分支,在source目录下新建一个CNAME文件,存放要绑定的域名,等到执行hexo g的时候,会把source目录下的文件“揍”到public下,然后推送到gh-pages分支上

xxx.xml 网站地图也可以用同样的方式放置到source目录

方法二: 理论上也可以在generateAfter事件中使用node处理

CNAME配置及工作原理探究

配置主要有两步:

  1. 个人域名增加 CNAME(可以理解为IP昵称(域名的)的昵称(CNAME)) 记录,记录值指向托管网站分配的域名(不带 http(s)/),添加完成之后,记得开启解析(需要等待一会,可以通过 ping 二级域名的方式检查是否解析成功)

  2. 托管网站上配置第一步添加的二级域名,起到桥接的作用

整体实现的效果就是“互联互通”。类似与路由器转发的工作,每个路由器上只存储相邻相近的路由器的ip,整合起来就是一张大网,任何已知网路请求都会经由路由器转发到达目的主机

当访问配置的二级域名时,由于我在域名管理平台上配置的 DNS解析到 托管网站的 域名,由该域名指向IP


我是 甜点cc

热爱前端,也喜欢专研各种跟本职工作关系不大的技术,技术、产品兴趣广泛且浓厚,等待着一个创业机会。主要致力于分享实用技术干货,希望可以给一小部分人一些微小帮助。

我排斥“新人迷茫,老人看戏”的现象,希望能和大家一起努力破局。营造一个良好的技术氛围,为了个人、为了我国的数字化转型、互联网物联网技术、数字经济发展做一点点贡献。数风流人物还看中国、看今朝、看你我。

部署Netlify站点博客的更多相关文章

  1. 多IDC GSLB的部署 - ADC技术博客 - 51CTO技术博客

    多IDC GSLB的部署 - ADC技术博客 - 51CTO技术博客 A10

  2. 使用Docker部署Spring-Boot+Vue博客系统

    在今年年初的时候,完成了自己的个Fame博客系统的实现,当时也做了一篇博文Spring-boot+Vue = Fame 写blog的一次小结作为记录和介绍.从完成实现到现在,也断断续续的根据实际的使用 ...

  3. 使用Github+Hexo框架搭建部署自己的博客

    前言 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用 Markdown (或其他渲染引擎 )解析文章, 在几秒内,即可利用靓丽的主题生成静态网页. 安装 安装前提 安装 Hexo 相当简单 ...

  4. ubuntu18.04安装部署typecho个人博客

    LNMP一键安装包安装 wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnm ...

  5. docker部署LAMP架构并部署上线wordpress博客系统

    第一步:直接在镜像仓库拉取LAMP镜像 [root@ken-node3 ken]# docker pull tutum/lamp 第二步:查看已经获取到的镜像 [root@ken-node3 ken] ...

  6. 如何快速部署国人开源的 Java 博客系统 Tale

    除了闷头专研技术之外,程序员还需要不断地写作进行技术积累,写博客是其中最重要的方式之一.商业博客平台不少,但是更符合程序员背景的方案,是自己开发一个博客平台或者使用开源的博客平台. 开源的博客平台多如 ...

  7. 使用Travis CI自动部署Hexo博客

    自从使用GitHub Pages和Hexo来发布博客之后,不得不说方便了许多,只需要几个简单的命令博客就发布了.但在不断的使用中发现每次的发布操作也挺耗时的. 我一般的操作是将平时整理好的md文件放到 ...

  8. 在github Pages上部署octopress搭建个人博客系统

    原文链接:http://caiqinghua.github.io/blog/2013/08/26/deploy-octopress-to-github-pages/ 引子 上一篇博客已经说了为什么要搭 ...

  9. hexo-next-travis-ci 构建自动化部署博客

    构建效果如上面视频所示,如果浏览器不支持请戳一下链接: 自动化部署构建效果 .只要将编辑的 .md 文件推送到 github 上,博客网站就可以更新这篇文章. 其实差不多半年前也构建过一次,由于安装 ...

随机推荐

  1. 图片管够!用Python做了个图片识别系统(附源码)

    本项目将使用python3去识别图片是否为色情图片,会使用到PIL这个图像处理库,并且编写算法来划分图像的皮肤区域 介绍一下PIL: PIL(Python Image Library)是一种免费的图像 ...

  2. Python:27行代码实现将多个Excel表格内容批量汇总合并到一个表格

    序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 老板最近越来越过分了,快下班了发给我几百个表格让我把内容合并到一个表格内去.还好我会Python,分分钟 ...

  3. 【数据库Mysql 查询当前时间,年月日】

    1.本年份 SELECT YEAR(now()) SELECT DATE_FORMAT(NOW(), '%Y') 2.本月份(例如:1.01.January) SELECT MONTH(now()) ...

  4. [BJDCTF2020]The mystery of ip|[CISCN2019 华东南赛区]Web11|SSTI注入

    记录一下BUUCTF中两个类似的SSTI注入关卡 [BJDCTF2020]The mystery of ip-1: 1.打开之后显示如下: 2.在hint.php中进行了相关提示,如下: 3.既然获取 ...

  5. LMC7660即-5V产生电路

    LMC7660为小功率极性反转电源转换器,通过LMC7660电路产生-5V电压,其芯片管脚定义如下表所示. LMC7660负电压产生电路如下图所示. 其中6脚当供电电压大于等于5V时该脚必须悬空,当供 ...

  6. Qt+ECharts开发笔记(二):Qt窗口动态调整大小,使ECharts跟随Qt窗口大小变换而变换大小

    前言   上一篇将ECharts嵌入Qt中,在开始ECharts使用之前,还有一个很重要的功能,就是在窗口变换大小的时候,ECharts的图表尺寸也要跟随Qt窗口变换大小而变换大小.   Demo演示 ...

  7. .net MVC微信开发自定义View类型菜单时在相应控制器获取用户OpenID的问题

    因为公司的项目在接收微信服务器Post过来的数据包是有指定的入口,所以在相应控制器里无法接收到微信服务器Post过来的数据,所以无法获得OpenID,也尝试过先在入口哪里解析获得OpenID再通过Se ...

  8. loguru备忘

    loguru是个非常好用的三方日志管理包,简单易用,奈何老是记不住,在这记录一下吧 #coding:utf-8 ''' @version: python3.8 @author: 'eric' @lic ...

  9. 第46届ICPC澳门站 K - Link-Cut Tree // 贪心 + 并查集 + DFS

    原题链接:K-Link-Cut Tree_第46屆ICPC 東亞洲區域賽(澳門)(正式賽) (nowcoder.com) 题意: 要求一个边权值总和最小的环,并从小到大输出边权值(2的次幂):若不存在 ...

  10. python 文件操作(读写等)

    简介 在实际开发中我们需要对文件做一些操作,例如读写文件.在文件中新添内容等,通常情况下,我们会使用open函数进行相关文件的操作,下面将介绍一下关于open读写的相关内容. open()方法 ope ...