云服务器上用 Nginx 托管静态网站:从安装到可访问的完整流程

举报
yd_236639601 发表于 2026/10/22 01:57:57 2026/10/22
【摘要】 以 Ubuntu / CentOS 云服务器为例,介绍用 Nginx 托管静态网站的完整流程:安装 Nginx、准备网站文件、编写站点配置、放行安全组与本机防火墙,并给出 403、404 等常见问题的排查思路。

把做好的静态页面(比如个人主页、文档站、小游戏)放到云服务器上让别人访问,最常用的方式就是用 Nginx 来托管。本文以常见的 Ubuntu / CentOS 云服务器为例,把从安装到浏览器可访问的完整流程梳理一遍,跟着做基本不会踩坑。


一、准备工作
1. 一台能 SSH 登录的云服务器(本文以 Ubuntu 22.04 / CentOS 7+ 为例)。
2. 确认安全组放行了 80 端口(HTTP):在云控制台找到服务器绑定的安全组,入方向添加规则——协议 TCP、端口 80、源地址 0.0.0.0/0。
3. 服务器本机防火墙也别忘了:Ubuntu 用 ufw,CentOS 用 firewalld,后文会讲。

二、安装 Nginx
Ubuntu / Debian:
sudo apt update
sudo apt install -y nginx

CentOS / RHEL:
sudo yum install -y nginx

安装完成后启动并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl status nginx
看到 active (running) 即表示运行正常。


三、准备网站文件
把静态文件(index.html、css、js、图片等)放到网站根目录。Ubuntu 默认是 /var/www/html,CentOS 默认是 /usr/share/nginx/html。

示例:
echo '<h1>Hello from my cloud server</h1>' | sudo tee /var/www/html/index.html

生产环境建议为每个站点单独建目录(如 /var/www/mysite),并把目录属主设为 Nginx 运行用户,避免权限问题。

四、写一个最简站点配置(可选)
默认配置开箱即用;如需自定义根目录或托管多个站点,可新建 server 配置。

Ubuntu 示例:新建 /etc/nginx/sites-available/mysite,内容如下:
server {
    listen 80;
    server_name _;
    root /var/www/mysite;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}
然后执行:
sudo ln -s /etc/nginx/sites-available/mysite /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

CentOS 示例:把同样的 server 块写到 /etc/nginx/conf.d/mysite.conf,然后执行 sudo nginx -t && sudo systemctl reload nginx。

注意:每次修改配置后都要先用 nginx -t 检查语法,通过后再 reload。


五、放行本机防火墙
Ubuntu(ufw):
sudo ufw allow 'Nginx Full'

CentOS(firewalld):
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload

六、验证访问
在浏览器地址栏输入服务器的公网 IP(或已解析的域名),看到页面即成功。也可在服务器本机验证:
curl -I http://localhost
返回 200 OK 说明服务正常。

常见问题排查
1. 浏览器打不开:先查安全组 80 端口是否放行,再查本机防火墙,最后确认 nginx 进程在运行。
2. 403 Forbidden:多半是目录或文件权限问题,确认 nginx 用户对网站目录有读取权限。
3. 404 Not Found:检查 root 路径与 index 文件名是否对应。
4. 改配置不生效:改完务必 nginx -t 检查语法再 reload。

小结
Nginx 托管静态网站核心就四步:装好 Nginx、放好网站文件、配好 server、放行 80 端口。流程跑通后,更新页面只需替换网站目录下的文件。对外正式提供服务时,建议再配置 HTTPS。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。