GitHub Pages + Jekyll 博客搭建指南(静态网站)

目录

  • 🚀 静态网站及其生成工具指南
    • 🌍 什么是静态网站?
      • 📌 静态网站的优势
      • ⚖️ 静态网站 VS 动态网站
    • 🚀 常见的静态网站生成器对比
    • 🛠️ 使用 GitHub Pages + Jekyll 搭建个人博客
      • 📌 1. 创建 GitHub 仓库
      • 📌 2. 安装 Jekyll(本地环境搭建)
        • 📌 安装 Ruby 和 Bundler
      • 📌 3. 创建 Jekyll 博客
      • 📌 4. 上传博客到 GitHub
      • 📌 5. 启用 GitHub Pages
    • 🎯 总结

🚀 静态网站及其生成工具指南

🌍 什么是静态网站?

静态网站(Static Website)指 所有网页内容(HTML、CSS、JavaScript、图片等)在服务器上是固定的,不需要服务器动态处理或数据库支持,用户访问时,服务器直接返回这些文件给浏览器进行展示。

📌 静态网站的优势

  1. 加载速度快:服务器直接返回静态文件,无需动态渲染。
  2. 安全性高:无数据库或后台逻辑,减少攻击风险。
  3. 部署简便:可托管在 GitHub Pages、Vercel、Netlify 等平台。
  4. 低维护成本:不需要服务器管理,适合长期运行。

⚖️ 静态网站 VS 动态网站

特点静态网站动态网站
内容更新需手动修改代码由数据库或后端代码动态生成
交互能力仅支持前端交互支持后端处理和数据库交互
访问速度快(直接返回页面)慢(服务器计算请求)
安全性高(无服务器端漏洞)低(可能有 SQL 注入、XSS 攻击)
适用场景博客、文档、企业官网论坛、电商、社交平台

🚀 常见的静态网站生成器对比

生成器语言适用场景特点
JekyllRuby博客、GitHub PagesGitHub Pages 官方支持,适合个人博客
HugoGo文档、博客、官网速度极快,单个二进制文件,无需安装依赖
HexoNode.js技术博客适合程序员,支持丰富插件和主题
GatsbyReact现代网站、数据驱动基于 React,支持 GraphQL,适用于动态内容
VuePressVue.js文档网站Vue 驱动,可作为技术文档平台

🛠️ 使用 GitHub Pages + Jekyll 搭建个人博客

📌 1. 创建 GitHub 仓库

  1. 访问 GitHub 并 登录

  2. 创建一个新的仓库,命名格式:

    yourusername.github.io
    

    (替换 yourusername 为你的 GitHub 用户名)

  3. 选择 Public(公开),点击 Create repository 创建仓库。


📌 2. 安装 Jekyll(本地环境搭建)

Jekyll 需要 Ruby 运行环境,建议使用最新版本的 Ruby。

📌 安装 Ruby 和 Bundler
  • Windows

    1. 安装 RubyInstaller

    2. Windows + R 输入 cmd ,运行以下命令检查安装:

      ruby -v
      gem -v
      

      若看到 Ruby 和 Gem 的版本号,则说明安装成功。

      在这里插入图片描述

  • macOS

    # 1. 在 Mac 上,推荐使用 Homebrew 安装 Ruby:
    brew install ruby# 2. 安装后,更新环境变量:
    echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc# 3. 验证安装:
    ruby -v
    gem -v
    
  • Linux

    • Ubuntu/Debian 系统

      sudo apt update
      sudo apt install ruby-full build-essential zlib1g-dev
      ruby -v
      gem -v
      
    • CentOS 系统

      sudo yum install ruby
      ruby -v
      gem -v
      
  • 安装 Bundler(Ruby 依赖管理器)

    # 安装命令
    gem install bundler# 安装验证
    bundler -v
    

    在这里插入图片描述

    [!NOTE]

    注: gem install jekyll bundler 这条命令用于全局安装 Jekyll 和 Bundler,它不依赖于当前所在的目录。这意味着你可以在任何目录下打开 命令提示符(cmd) 后执行该命令,只需满足以下条件:

    1. Ruby 已安装:确保你已经在 Windows 系统上正确安装了 Ruby(推荐使用 RubyInstaller)

    2. PATH 环境变量已配置:安装 Ruby 后,请确认 Ruby 的 bin 目录已添加到系统的 PATH 环境变量中,这样你就可以在任意目录下使用 gem 命令。


📌 3. 创建 Jekyll 博客

cmd终端运行:

# 1.安装 Jekyll 和必要依赖:
gem install jekyll bundler# 2.初始化一个新的 Jekyll 项目:
jekyll new my-blog# 3.进入博客目录并安装依赖:
cd my-blog
bundle install# 4.启动本地服务器
bundle exec jekyll serve# 5.打开浏览器访问 http://127.0.0.1:4000 预览博客

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


📌 4. 上传博客到 GitHub

  1. 进入博客目录:

    cd my-blog
    
  2. 初始化 Git 仓库: 在终端中,确保进入你的博客目录并执行以下命令:

    # 在当前目录下初始化一个本地 Git 仓库
    git init# 将 “当前目录及其子目录中的所有文件” 添加到 Git 的暂存区(Staging Area)
    git add .# 将暂存区中的文件提交到本地的 Git 仓库,并附加一条提交说明(commit message)
    git commit -m "Initial commit"
    
  3. 关联 GitHub 远程仓库并推送:

    git remote add origin https://github.com/yourusername/yourusername.github.io.git
    git branch -M main
    
  4. 将代码推送到 GitHub:

    git push -u origin main
    

📌 5. 启用 GitHub Pages

  1. 进入 GitHub 仓库 SettingsPages

  2. Branch 选择 main 分支→ Folder: / (root),点击 Save

  3. 访问:

    https://yourusername.github.io
    

    你的博客已上线!🎉


🎯 总结

  • Jekyll:适合 GitHub Pages,简洁稳定。
  • Hugo:最快,适合大规模博客/文档。
  • Hexo:Node.js + 主题丰富,适合技术博客。
  • Gatsby:React + GraphQL,适合现代网站。
  • VuePress:Vue.js + 文档站点最佳。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/69413.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

字符设备驱动开发

驱动就是获取外设、传感器数据和控制外设。数据会提交给应用程序。 Linux 驱动编译既要编写一个驱动,还要编写一个简单的测试应用程序。 而单片机下驱动和应用都是放在一个文件里,也就是杂在一块。而 Linux 则是分开了。 一、字符设备驱动开发流程 Lin…

参数映射服务完整解决方案

参数映射服务完整解决方案 1. 背景说明 在复杂的工作流程中,后续程序需要动态构造输入参数,这些参数源自多个前序程序的 JSON 数据输出。为了增强系统的灵活性和可扩展性,需要一个通用的参数映射服务来处理这种复杂的数据转换需求。 1.1 主…

SpringCloud - Nacos注册/配置中心

前言 该博客为Nacos学习笔记,主要目的是为了帮助后期快速复习使用 学习视频:7小快速通关SpringCloud 辅助文档:SpringCloud快速通关 一、简介 Nacos官网:https://nacos.io/docs/next/quickstart/quick-start/ Nacos /nɑ:kəʊ…

IDEA安装离线插件(目前提供了MavenHelper安装包)

目录 1、离线安装方式2、Maven Helper 1、离线安装方式 首先访问 IDEA插件网站 下载离线插件安装包,操作如下: 然后打开IDEA的Settings配置,点击Plugins,点击右侧设置按钮(齿轮),选择Install P…

科技赋能数字内容体验的核心技术探索

内容概要 在数字化时代,科技的迅猛发展为我们的生活和工作带来了深刻的变革。数字内容体验已经成为人们获取信息和娱乐的重要途径,而这背后的技术支持则扮演着至关重要的角色。尤其是在人工智能、虚拟现实和区块链等新兴技术的推动下,数字内…

【LeetCode 刷题】贪心算法(2)-进阶

此博客为《代码随想录》贪心算法章节的学习笔记,主要内容为贪心算法进阶的相关题目解析。 文章目录 135. 分发糖果406. 根据身高重建队列134. 加油站968. 监控二叉树 135. 分发糖果 题目链接 class Solution:def candy(self, ratings: List[int]) -> int:n l…

工业相机,镜头的选型及实战

工业相机和镜头的选型是机器视觉系统中的关键步骤,选型不当可能导致成像质量差或系统性能不达标。(用于个人的学习和记录) 一、工业相机选型方法 确定分辨率 分辨率需求:根据被测物体的尺寸和检测精度要求计算所需分辨率。 公式…

探索robots.txt:网站管理者的搜索引擎指南

在数字时代,网站如同企业的在线名片,其内容和结构对搜索引擎的可见性至关重要。而在这背后,有一个默默工作的文件——robots.txt,它扮演着搜索引擎与网站之间沟通桥梁的角色。本文将深入探讨robots.txt的功能、编写方法及其在现代…

使用WebUI访问本地Deepseek(Ollama集成Open WebUI)

在《deepseek本地部署和使用(Linux虚拟机)》中,我们使用Ollama部署了Deepseek-r1,但是只能通过命令行方式交互,默认Ollama启动后,会启动一个监听到127.0.0.1,用以接收POST 请求,服务…

windows蓝牙驱动开发-蓝牙 LE 邻近感应配置文件

邻近感应检测是蓝牙低功耗 (LE) 的常见用途。 本部分提供了创建可用于开发 UWP 设备应用的邻近感应配置文件的设备实现的指南。 在开发此应用之前,应熟悉蓝牙 LE 函数和蓝牙 LE 邻近感应配置文件规范。 示例服务声明 蓝牙低功耗引入了一个新的物理层,…

模型 冗余系统(系统科学)

系列文章分享模型,了解更多👉 模型_思维模型目录。为防故障、保运行的备份机制。 1 冗余系统的应用 1.1 冗余系统在企业管理中的应用-金融行业信息安全的二倍冗余技术 在金融行业,信息安全是保障业务连续性和客户资产安全的关键。随着数字化…

AI绘画社区:解锁艺术共创的无限可能(9/10)

AI 绘画:不只是技术,更是社交新潮流 在科技飞速发展的今天,AI 绘画早已不再仅仅是一项孤立的技术,它正以惊人的速度融入我们的社交生活,成为艺术爱好者们交流互动的全新方式,构建起一个充满活力与创意的社…

DeepSeek使用技巧大全(含本地部署教程)

在人工智能技术日新月异的今天,DeepSeek 作为一款极具创新性和实用性的 AI,在众多同类产品中崭露头角,凭借其卓越的性能和丰富的功能,吸引了大量用户的关注。 DeepSeek 是一款由国内顶尖团队研发的人工智能,它基于先进…

IDEA - 一个启动类多次启动方法

More Run/Debug -> Modify Run Configuration -> modify options -> Allow mutiple instances

Android Studio 配置 Gerrit Code Review

很多大厂(华为、荣耀)的大型项目都有gerrit代码审查流程,那么我们如何实现不手动敲命令行,就在Android Studio中像平常开发一样,只需要用鼠标点点点,就能将代码推送到gerrit审查仓呢,现在就来跟…

TypeScript 中的对象类型:深入理解接口和类型别名

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【Java基础】序列化、反序列化和不可变类

Hi~!这里是奋斗的明志,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 🌱🌱个人主页:奋斗的明志 🌱🌱所属专栏:Java基础面经 📚本系列文章为个…

吴恩达深度学习——卷积神经网络的特殊应用

内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习使用。 文章目录 人脸识别相关定义Similarity函数使用Siamese网络实现函数d使用Triplet损失学习参数 神经风格迁移深度卷积网络可视化神经风格迁移的代价函数内容损失函数风格损失函数 人脸识别 …

搭建linux qt5.6环境

文章目录 准备工作步骤测试 准备工作 1、linux虚拟机环境 2、linux qt安装包相关文件,本文采用压缩包方式 步骤 1)启动虚拟机并登入 2)打开linux终端命令行,ifconfig获取当前linux环境的ip 3)使用WinSCP设置好ip、…

C++ 使用CURL开源库实现Http/Https的get/post请求进行字串和文件传输

CURL开源库介绍 CURL 是一个功能强大的开源库,用于在各种平台上进行网络数据传输。它支持众多的网络协议,像 HTTP、HTTPS、FTP、SMTP 等,能让开发者方便地在程序里实现与远程服务器的通信。 CURL 可以在 Windows、Linux、macOS 等多种操作系…