linux上用nginx托管静态网页只需三步:安装nginx、放置静态文件至/var/www/my-site并设权限、配置server块指向该目录,最后验证语法并重载服务即可访问。

Linux 上用 Nginx 托管静态网页,核心就三件事:装好 Nginx、把网页文件放对位置、改好配置让它能找得到。
安装 Nginx
不同发行版命令略有差异,但都很直接:
- Ubuntu/Debian 系统:运行
sudo apt update && sudo apt install nginx - CentOS/RHEL 8+:先启用 EPEL 源(
sudo dnf install epel-release),再执行sudo dnf install nginx - CentOS 7:用
sudo yum install epel-release && sudo yum install nginx
装完后启动并设为开机自启:sudo systemctl start nginx && sudo systemctl enable nginx。访问服务器 IP,看到 “Welcome to nginx!” 页面,说明服务已正常运行。
准备静态文件目录
把你的 HTML、CSS、JS、图片等文件统一放到一个目录里,比如 /var/www/my-site:
- 创建目录:
sudo mkdir -p /var/www/my-site - 把本地网页文件复制进去(可用
scp或rsync) - 确保 Nginx 有读取权限:
sudo chown -R $USER:nginx /var/www/my-site,再加执行权限:sudo chmod -R 755 /var/www/my-site
注意:Nginx 默认以 nginx 用户运行,它必须能读取文件和进入目录(即目录需有 x 权限)。
配置 server 块
推荐用独立配置文件,更清晰、易管理:
- 新建站点配置:
sudo nano /etc/nginx/sites-available/my-site - 填入以下内容(替换
your_domain_or_ip为实际域名或留空):
server {
listen 80;
server_name your_domain_or_ip;
root /var/www/my-site;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
启用该配置:创建软链接 sudo ln -sf /etc/nginx/sites-available/my-site /etc/nginx/sites-enabled/。如果系统没启用 sites-enabled 机制(如 CentOS 默认),就把这段直接写进 /etc/nginx/nginx.conf 的 http{...} 块里。
验证与重启
每次改完配置都必须检查语法并重载:
- 测试配置是否合法:
sudo nginx -t—— 输出 “syntax is ok” 和 “test is successful” 才算通过 - 生效新配置:
sudo systemctl reload nginx(比 restart 更轻量,不中断连接) - 如果防火墙开着(如 firewalld 或 ufw),记得放行 80 端口:
sudo firewall-cmd --permanent --add-service=http+sudo firewall-cmd --reload
此时访问服务器 IP 或绑定的域名,就能看到你的首页了。所有相对路径引用(如 ./style.css、js/app.js)只要文件结构一致,都会自动加载成功。











