搭建静态博客
本文记录如何在 Linux VPS 上搭建一个静态博客网站。
技术栈
- Hugo
- PaperMod 主题
- Nginx
- HTTPS
服务器示例配置
- CPU: 2 Core
- RAM: 2GB
- SSD: 40GB
- OS: Ubuntu
一、安装 Nginx
- 更新系统:
apt update - 安装 Nginx:
apt install nginx -y - 启动 Nginx 并设置开机自启:
systemctl start nginx systemctl enable nginx - 测试访问:
如果看到默认页面说明安装成功。http://<YOUR_DOMAIN>
二、创建网站目录
- 创建博客目录:
mkdir -p /var/www/blog - 创建测试页面:
nano /var/www/blog/index.html - 测试页面示例内容:
<h1>My Blog</h1>
三、配置 Nginx 站点
- 创建配置文件:
nano /etc/nginx/sites-available/blog - 配置文件内容:
server { listen 80; server_name <YOUR_DOMAIN>; root /var/www/blog; index index.html; location / { try_files $uri $uri/ =404; } } - 启用站点:
ln -s /etc/nginx/sites-available/blog /etc/nginx/sites-enabled/ - 检查配置语法:
nginx -t - 重启 Nginx 生效:
systemctl restart nginx
四、申请 HTTPS
- 安装证书工具:
apt install certbot python3-certbot-nginx -y - 申请证书:
certbot --nginx - 按提示操作:
- 输入邮箱:
<YOUR_EMAIL> - 选择域名:
<YOUR_DOMAIN>
- 输入邮箱:
- 验证访问:
https://<YOUR_DOMAIN>
五、安装 Hugo
- 下载 Hugo 扩展版:
wget https://github.com/gohugoio/hugo/releases/latest/download/hugo_extended_linux-amd64.deb - 安装 Hugo:
dpkg -i hugo_extended_linux-amd64.deb - 检查版本验证安装:
hugo version
六、创建博客项目
- 进入网站根目录:
cd /var/www - 创建 Hugo 站点:
hugo new site blogsite - 进入项目目录:
cd blogsite
七、安装博客主题
- 下载 PaperMod 主题:
git clone https://github.com/adityatelange/hugo-PaperMod themes/PaperMod - 编辑站点配置文件:
nano hugo.toml - 基础配置示例:
baseURL = "https://<YOUR_DOMAIN>/" title = "My Blog" theme = "PaperMod"
八、创建第一篇文章
- 创建文章文件:
hugo new posts/hello.md - 编辑文章内容:
nano content/posts/hello.md - 文章示例内容:
--- title: "Hello World" date: 2026-03-10 draft: false --- 欢迎来到我的博客。 这是第一篇文章。
九、生成博客
执行 Hugo 构建命令生成静态文件:
hugo
生成的静态文件会保存在:/var/www/blogsite/public
十、发布博客
- 清空旧文件并复制新生成的静态文件:
rm -rf /var/www/blog/* cp -r public/* /var/www/blog/ - 设置目录权限:
chown -R www-data:www-data /var/www/blog chmod -R 755 /var/www/blog - 重启 Nginx 生效:
systemctl restart nginx
十一、访问博客
打开浏览器访问以下地址即可查看博客:
https://<YOUR_DOMAIN>
十二、更新博客
- 创建新文章:
hugo new posts/article.md - 编辑新文章内容:
nano content/posts/article.md - 重新生成静态文件:
hugo - 重新发布:
无需重启 Nginx,网站会自动更新。
cp -r public/* /var/www/blog/
项目目录结构
/var/www
├── blog # Nginx 根目录(最终访问的静态文件)
│
└── blogsite # Hugo 项目目录
├── content # 文章内容目录
├── themes # 主题目录
├── static # 静态资源(图片、CSS 等)
└── public # Hugo 生成的静态文件目录
总结
使用 Hugo 搭建博客具有以下优点:
- 静态网站速度快
- 资源占用低
- 安全性高
- 部署简单