Skip to content

第一章 Nginx入门基础 v1.0 ​

Nginx是一个高性能的HTTP和反向代理服务器,具有高并发、低内存消耗等特点

第一部分 Nginx简介 ​

一、什么是Nginx ​

Nginx(engine x)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。

二、Nginx特点 ​

  1. 高并发:支持数万并发连接
  2. 低内存消耗:内存占用少
  3. 高可靠性:稳定性好
  4. 热部署:支持不停机更新配置

第二部分 安装与配置 ​

一、安装Nginx ​

bash
# Ubuntu/Debian
sudo apt update
sudo apt install nginx

# CentOS/RHEL
sudo yum install epel-release
sudo yum install nginx

二、启动Nginx ​

bash
sudo systemctl start nginx
sudo systemctl enable nginx

第三部分 基本配置 ​

一、配置文件结构 ​

Nginx配置文件位于/etc/nginx/nginx.conf,主要包含:

  • 全局块:配置影响Nginx全局的指令
  • events块:配置Nginx服务器与用户的网络连接
  • http块:配置HTTP相关参数
  • server块:配置虚拟主机
  • location块:配置请求的路由

二、虚拟主机配置 ​

nginx
server {
    listen 80;
    server_name example.com;
    
    location / {
        root /var/www/html;
        index index.html;
    }
}

三、反向代理配置 ​

nginx
server {
    listen 80;
    server_name api.example.com;
    
    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

第四部分 常用功能 ​

一、负载均衡 ​

nginx
upstream backend {
    server backend1.example.com;
    server backend2.example.com;
}

server {
    location / {
        proxy_pass http://backend;
    }
}

二、HTTPS配置 ​

nginx
server {
    listen 443 ssl;
    server_name example.com;
    
    ssl_certificate /etc/nginx/ssl/example.com.crt;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;
    
    location / {
        root /var/www/html;
    }
}