用Nginx搭静态网站只需三步:监听端口、指定root路径、设置index文件;需确保路径存在、权限正确(如chown www-data)、语法无误(nginx -t验证);建议禁用autoindex、设置charset utf-8、启用gzip和expires缓存。

直接用 Nginx 搭静态网站,核心就三件事:指定监听端口、告诉它文件在哪、设好默认首页。配置不复杂,但路径、权限、语法这几处容易出错。
基础 server 块配置
在 /etc/nginx/conf.d/ 下新建一个配置文件(比如 mysite.conf),写入以下内容:
- listen 80:监听 80 端口(HTTP 默认端口)
-
server_name your-domain.com 或 IP 地址:填你实际访问用的域名或服务器公网 IP;若本地测试可写
localhost - root /var/www/mysite:静态文件存放目录(需提前创建并放好 index.html 等)
- index index.html index.htm:当访问根路径时,优先找这两个文件名
文件路径与权限确认
Nginx 必须能读取你的 HTML 和资源文件:
- 把网站文件(如
index.html、css/、js/)放进root指定的目录,例如/var/www/mysite/index.html - 确保 Nginx 进程用户(通常是
www-data或nginx)对该目录有读取权限:sudo chown -R www-data:www-data /var/www/mysitesudo chmod -R 755 /var/www/mysite - 如果遇到
403 Forbidden,大概率是权限或autoindex干扰导致,不是配置写错了
启用前务必验证
改完配置别急着 reload,先做两步检查:
- 运行
sudo nginx -t:检查语法是否合法,路径是否存在,这是最常被跳过的一步 - 确认无误后执行
sudo systemctl reload nginx(或sudo nginx -s reload) - 本地快速验证:
curl -I http://localhost看返回是否为200 OK;再用浏览器访问对应地址
几个实用增强项
不是必须,但上线前建议加上:
-
禁用目录浏览:在
location / { ... }块里加一行autoindex off;,防止用户看到文件列表 -
设置字符集:在
server块中加charset utf-8;,避免中文乱码 -
开启 gzip 压缩:在
http块里启用gzip on;及对应gzip_types,减小传输体积 -
缓存静态资源:在
location块里加expires 30d;,让浏览器缓存一个月


















