0

0

使用 Hexo + GitHub + 阿里云 CDN 打造极致静态博客

心靈之曲

心靈之曲

发布时间:2025-08-08 21:05:01

|

310人浏览过

|

来源于php中文网

原创

选择hexo主题需综合考虑颜值、功能和可定制性,优先选择支持评论、分享、统计等功能且允许自定义css和javascript的主题,通过预览demo和参考他人经验来确定是否符合需求;github pages部署失败常见原因包括_config.yml中deploy配置错误、仓库未开启pages服务、分支名称不匹配、未清理缓存或网络问题,应逐一排查并执行hexo clean后重新生成部署;阿里云cdn配置https时若遇问题,需确保已正确上传并启用ssl证书(可使用阿里云或let's encrypt免费证书),检查证书有效期、刷新cdn缓存,并确认博客资源引用均为https链接以避免混合内容警告。

使用 Hexo + GitHub + 阿里云 CDN 打造极致静态博客

利用 Hexo 静态博客框架,配合 GitHub Pages 提供的免费托管服务,再叠加阿里云 CDN 加速,能以极低的成本构建一个访问速度快、稳定性高的个人博客。

解决方案

  1. Hexo 初始化: 首先,你需要安装 Node.js 和 Git。安装完成后,通过 npm 安装 Hexo CLI:

    npm install -g hexo-cli
    。然后,在你想存放博客的目录下执行
    hexo init <blog_name>
    ,接着
    cd <blog_name>
    进入博客目录,执行
    npm install
    安装依赖。

  2. 配置 Hexo: 修改

    _config.yml
    文件是 Hexo 的核心。你需要配置网站标题、作者、主题等基本信息。 主题可以从 Hexo 官网或者 GitHub 上寻找,比如流行的 Next、Butterfly 等。 安装主题后,同样需要在
    _config.yml
    中指定。

  3. 撰写博客: 使用

    hexo new "你的文章标题"
    命令创建一篇新的 Markdown 文章。 文章会存放在
    source/_posts
    目录下。 用你喜欢的 Markdown 编辑器编辑文章内容。

  4. GitHub Pages 部署: 在 GitHub 上创建一个新的仓库,仓库名必须是

    你的用户名.github.io
    。 然后,安装
    hexo-deployer-git
    插件:
    npm install hexo-deployer-git --save
    。 在
    _config.yml
    中配置 deploy 部分:

    deploy:
      type: git
      repo: git@github.com:你的用户名/你的用户名.github.io.git
      branch: main  # 或者 master,取决于你的仓库默认分支

    执行

    hexo generate
    生成静态文件,然后执行
    hexo deploy
    部署到 GitHub Pages。

    Tome
    Tome

    先进的AI智能PPT制作工具

    下载
  5. 阿里云 CDN 加速: 注册阿里云账号,开通 CDN 服务。 在 CDN 控制台添加域名,域名就是你的 GitHub Pages 地址

    你的用户名.github.io
    。 配置源站信息,源站类型选择 "域名",源站地址填写
    你的用户名.github.io
    。 阿里云 CDN 会自动缓存你的静态资源,提升访问速度。 你还可以配置 HTTPS,让你的博客更安全。

如何选择 Hexo 主题才能让博客更具个性?

选择 Hexo 主题不仅仅是看颜值,更要考虑功能和可定制性。 一些主题提供了丰富的功能,比如评论系统、社交分享、统计分析等。 更重要的是,主题应该允许你自定义 CSS 和 JavaScript,这样才能打造出独一无二的博客风格。 在选择主题之前,最好先预览一下 Demo,看看是否符合你的需求。 此外,还可以参考其他博主的经验,看看他们是如何定制主题的。

GitHub Pages 部署失败,常见原因有哪些?

GitHub Pages 部署失败的原因有很多。 首先,检查你的

_config.yml
文件中的 deploy 配置是否正确,特别是 repo 地址和 branch 名称。 其次,检查你的 GitHub 仓库是否已经开启了 GitHub Pages 功能。 在仓库的 Settings -> Pages 中,确保 Source 选择的是 main (或 master) 分支。 如果还是不行,可以尝试清理缓存:
hexo clean
,然后重新生成和部署。 另外,网络问题也可能导致部署失败,可以尝试更换网络环境或者使用代理。

阿里云 CDN 配置 HTTPS 遇到问题,如何解决?

阿里云 CDN 配置 HTTPS 需要上传 SSL 证书。 你可以购买阿里云的 SSL 证书,也可以使用免费的 Let's Encrypt 证书。 上传证书后,需要在 CDN 控制台启用 HTTPS。 如果配置后仍然无法访问 HTTPS,可能是证书配置不正确,或者 CDN 节点缓存了旧的配置。 可以尝试刷新 CDN 缓存,或者检查证书是否过期。 此外,确保你的博客中引用的资源都是 HTTPS 的,否则会出现混合内容警告。 如果使用 Let's Encrypt 证书,需要定期更新证书,否则会过期。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

531

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

576

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

760

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

6230

2023.08.17

js删除节点的方法
js删除节点的方法

js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

492

2023.09.01

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

221

2023.09.04

Js中concat和push的区别
Js中concat和push的区别

Js中concat和push的区别:1、concat用于将两个或多个数组合并成一个新数组,并返回这个新数组,而push用于向数组的末尾添加一个或多个元素,并返回修改后的数组的新长度;2、concat不会修改原始数组,是创建新的数组,而push会修改原数组,将新元素添加到原数组的末尾等等。本专题为大家提供concat和push相关的文章、下载、课程内容,供大家免费下载体验。

240

2023.09.14

js截取字符串的方法介绍
js截取字符串的方法介绍

JavaScript字符串截取方法,包括substring、slice、substr、charAt和split方法。这些方法可以根据具体需求,灵活地截取字符串的不同部分。在实际开发中,根据具体情况选择合适的方法进行字符串截取,能够提高代码的效率和可读性 。

303

2023.09.21

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.6万人学习

CSS教程
CSS教程

共754课时 | 42.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号