用 ECS + Nginx 十分钟搭一个静态博客
本站就这么来的。整个过程大概十分钟(如果你已经有一台 ECS),如果你想搞一个类似的小站,跟着做就行。
0. 你需要准备
- 一台公网 Linux 服务器(我用的是阿里云 ECS,Alibaba Cloud Linux 4)
- 一个域名(可选,没有也能用 IP 访问)
- 10 分钟 + 一杯咖啡
1. 装 nginx
Alibaba Cloud Linux / CentOS 系:
sudo yum install -y nginx
Ubuntu / Debian 系:
sudo apt update && sudo apt install -y nginx
2. 建站点目录
sudo mkdir -p /var/www/your-domain.com
sudo chown -R $USER:$USER /var/www/your-domain.com
3. 写 server block
新建 /etc/nginx/conf.d/your-domain.com.conf:
server {
listen 80;
server_name your-domain.com www.your-domain.com;
root /var/www/your-domain.com;
index index.html;
charset utf-8;
location ~* \.(css|js|png|jpg|svg)$ {
expires 7d;
}
location / {
try_files $uri $uri/ $uri.html =404;
}
}
4. 写一个 index.html 进去
<!DOCTYPE html>
<html><body><h1>Hello, World</h1></body></html>
5. 启动 nginx
sudo nginx -t # 检查配置
sudo systemctl enable nginx
sudo systemctl start nginx
现在用 IP 访问,应该能看到 "Hello, World" 了。
6. 域名解析
去你的域名服务商(阿里云、Cloudflare 等),把 your-domain.com 和 www.your-domain.com 都加一条 A 记录,指向你的 ECS 公网 IP。TTL 默认就行。
DNS 生效需要几分钟到几小时,期间你可能会遇到 502 或者 ping 不通,不要急。
7. 上 HTTPS(强烈建议)
用 certbot 申请 Let's Encrypt 证书,自动续期:
sudo yum install -y certbot python-certbot-nginx
sudo certbot --nginx -d your-domain.com -d www.your-domain.com
它会自动改你的 nginx 配置,把 80 重定向到 443,加证书路径。
写在最后
以上是搭建一个静态博客的最小骨架。之后写文章就是往 /var/www/your-domain.com/post/ 里塞 HTML 文件的事。
如果你不想手写 HTML,可以用 Hexo、Hugo 之类的静态站点生成器,生成静态文件后扔到这个目录里就行。
祝你也能有个小站。