Nginx 安装配置

Nginx 是高性能的 Web 服务器与反向代理软件,资源占用少、并发能力强,常用于托管静态网站、把请求转发给后端应用(Tomcat、Node 等)或做负载均衡。

安装 Nginx

Debian/Ubuntu 用 apt,CentOS/RedHat 用 yum,装好后用 nginx -v 验证版本:

sudo apt update
sudo apt -y install nginx    # Debian/Ubuntu
sudo yum -y install nginx    # CentOS/RedHat
nginx -v
# 输出:nginx version: nginx/1.18.0

启动与停止服务

用 systemctl 管理服务,enable 设置开机自启:

sudo systemctl start nginx      # 启动
sudo systemctl enable nginx     # 开机自启
sudo systemctl status nginx     # 查看状态
sudo systemctl restart nginx    # 重启
sudo systemctl stop nginx       # 停止

浏览器访问 http://服务器IP,看到 Welcome to nginx! 即安装成功。

配置文件结构

主配置 /etc/nginx/nginx.conf,站点配置放在 conf.d/ 下,server 块即一个站点;改完配置先 nginx -t 测语法,再 reload 平滑重载:

http {
    include /etc/nginx/conf.d/*.conf;   # 引入所有站点配置
    server { listen 80; }               # 站点示例
}

配置静态网站

新建 server 块,指定端口、域名、站点根目录与首页:

server {
    listen 80;
    server_name www.example.com;
    root /var/www/myweb;       # 站点根目录
    index index.html;          # 默认首页
}
sudo mkdir -p /var/www/myweb
echo "<h1>我的站点</h1>" | sudo tee /var/www/myweb/index.html
sudo nginx -t && sudo systemctl reload nginx   # 平滑重载

反向代理配置

把请求转发给后端应用用 proxy_pass,前端 Nginx 只做「传话人」:

server {
    listen 80;
    server_name api.example.com;
    location / {
        proxy_pass http://127.0.0.1:8080;      # 转给 8080 应用
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

负载均衡配置

upstream 定义一组后端,Nginx 默认轮询分发请求:

upstream backend {
    server 192.168.1.10:8080 weight=1;   # 权重越高,分到的请求越多
    server 192.168.1.11:8080 weight=2;
}
server {
    listen 80;
    location / {
        proxy_pass http://backend;       # 转发到 upstream 组
    }
}

小结

Nginx 部署三步走:apt/yum 安装并 systemctl 启动,按 server 块配置静态站点或 proxy_pass 反代,最后 nginx -t 校验语法并 reload。掌握这套流程即可应对大部分 Web 部署需求。

笔记加载中…