用 Nginx 部署静态网站并开启 HTTPS
本站就是一个纯静态站点。本文记录在一台 Linux 云服务器上用 Nginx 部署静态网站的完整步骤。
一、安装 Nginx
# Debian / Ubuntu
sudo apt update && sudo apt install -y nginx
# CentOS / Rocky
sudo dnf install -y nginx
sudo systemctl enable --now nginx
二、上传网站文件
sudo mkdir -p /var/www/myuri
rsync -avz --delete ./ user@your-server:/var/www/myuri/
三、站点配置
新建 /etc/nginx/conf.d/myuri.conf:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/myuri;
index index.html;
location / {
try_files $uri $uri/ =404;
}
# 静态资源长缓存
location ~* \.(css|js|png|jpg|svg|woff2)$ {
expires 30d;
add_header Cache-Control "public";
}
gzip on;
gzip_types text/css application/javascript image/svg+xml;
}
检查并重载配置:
sudo nginx -t && sudo systemctl reload nginx
四、开启 HTTPS
使用 Certbot 申请 Let's Encrypt 免费证书,它会自动修改 Nginx 配置并设置续期:
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
证书有效期 90 天,可以用 sudo certbot renew --dry-run 验证自动续期是否正常。
五、国内服务器注意事项
- 使用中国大陆服务器对外提供网站服务,域名需要先完成 ICP 备案,否则 80/443 端口会被拦截。
- 备案通过后,需要在网站底部展示备案号,并链接到工信部备案管理系统
beian.miit.gov.cn。 - 记得在云厂商安全组中放行 80 和 443 端口。
小结
安装、上传、配置、证书四步,一个静态网站就上线了。后续更新只需要重新执行一次 rsync。