从零搭建高性能Nginx Web服务器

互联网资讯

从零搭建高性能Nginx Web服务器

2026-08-27 16:26


介绍Linux下Nginx Web服务器搭建、域名HTTPS及安全配置流程。

web服务器搭建

搭建 Web 服务器是很多网站、博客、后台系统、API 服务和 Web 应用上线的基础。所谓 Web 服务器,简单来说就是负责接收用户浏览器请求,并返回网页、图片、接口数据或应用内容的服务器程序。常见的 Web 服务器软件包括 Nginx、Apache、Tomcat、Caddy,也可以配合 Node.js、PHP、Python 等运行环境使用。

下面以 Linux 服务器为基础,介绍一套常见的 Web 服务器搭建思路。

一、准备服务器环境

搭建 Web 服务器前,需要准备一台云服务器或本地服务器。服务器系统通常选择 Ubuntu、Debian、CentOS 等 Linux 发行版。

常见准备工作包括:

# 更新软件源
sudo apt update

# 安装基础工具
sudo apt install curl vim unzip git -y

如果是云服务器,还需要在控制台开放端口,例如:

  • 80:HTTP 访问端口
  • 443:HTTPS 访问端口
  • 22:SSH 远程连接端口

二、安装 Nginx

Nginx 是目前非常流行的 Web 服务器,性能好、占用资源低,常用于静态网站、反向代理和负载均衡。

安装命令如下:

sudo apt install nginx -y

安装完成后,启动 Nginx:

sudo systemctl start nginx
sudo systemctl enable nginx

查看运行状态:

sudo systemctl status nginx

如果服务正常,可以在浏览器中访问服务器 IP 地址,看到 Nginx 默认页面。

三、配置网站目录

通常网站文件会放在以下目录:

/var/www/html

也可以为不同网站创建独立目录,例如:

sudo mkdir -p /var/www/myweb

创建测试页面:

sudo vim /var/www/myweb/index.html

写入内容:




    
    我的网站


    

Web 服务器搭建成功

然后创建 Nginx 配置文件:

sudo vim /etc/nginx/sites-available/myweb

配置示例:

server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/myweb;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

启用配置:

sudo ln -s /etc/nginx/sites-available/myweb /etc/nginx/sites-enabled/

检查配置是否正确:

sudo nginx -t

重新加载 Nginx:

sudo systemctl reload nginx

配置完成后,通过域名或服务器 IP 即可访问网站。

四、配置域名解析

如果希望用户通过域名访问网站,需要将域名解析到服务器 IP。

常见 DNS 记录如下:

记录类型 主机记录 记录值 作用
A @ 服务器公网 IP 主域名访问
A www 服务器公网 IP www 子域名访问
CNAME blog example.com 二级域名访问

DNS 生效后,在 Nginx 配置中的 server_name 填写对应域名即可。

五、配置 HTTPS

HTTPS 可以提升网站安全性,避免数据被明文传输。可以使用 Let’s Encrypt 免费证书。

安装 Certbot:

sudo apt install certbot python3-certbot-nginx -y

申请证书:

sudo certbot --nginx -d example.com -d www.example.com

按照提示输入邮箱和确认信息即可完成配置。

配置完成后,Nginx 会自动启用 HTTPS,并可设置自动续期。

六、部署动态网站或应用

如果只是静态网站,Nginx 可以直接返回 HTML、CSS、JavaScript 和图片文件。如果需要运行动态网站,还需要对应的后端环境。

例如:

  • PHP 网站:安装 PHP-FPM
  • Java 网站:使用 Tomcat 或 Spring Boot
  • Node.js 项目:使用 Node 运行,并通过 Nginx 反向代理
  • Python 项目:使用 Gunicorn、uWSGI 或 ASGI 服务

以 Node.js 为例,Nginx 可以作为反向代理:

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

这样可以由 Nginx 处理用户请求,再转发给后端应用。

七、服务器安全建议

搭建 Web 服务器后,安全配置同样重要。建议注意以下几点:

  1. 关闭不必要的端口,只开放需要的服务端口。
  2. 使用 SSH 密钥登录,减少密码暴力破解风险。
  3. 定期更新系统和软件包。
  4. 配置防火墙,例如 UFW。
  5. 网站目录设置合理权限,避免权限过大。
  6. 启用 HTTPS,保护用户数据传输。
  7. 定期备份网站文件和数据库。
  8. 对后台管理入口进行访问限制。

可以启用 UFW 防火墙:

sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable

总结

Web 服务器搭建主要包括服务器准备、安装 Web 服务软件、配置网站目录、绑定域名、启用 HTTPS、部署应用以及安全加固等步骤。对于初学者来说,使用 Nginx 是一个比较推荐的方案,它配置简单、性能稳定,适合承载静态网站、动态应用和反向代理服务。只要按照流程完成环境安装、站点配置和域名解析,就可以快速搭建出一个可访问、可扩展、相对安全的 Web 服务器。


标签: Web服务器 Nginx HTTPS