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 部署需求。