Nginx安装与部署完整指南

Nginx安装与部署完整指南

一、环境准备
  1. 系统要求

    • Linux系统(推荐Ubuntu/CentOS)
    • 内存 ≥ 512MB
    • 磁盘空间 ≥ 100MB
  2. 安装依赖

# Ubuntu/Debian
sudo apt update
sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# CentOS/RHEL
sudo yum groupinstall "Development Tools"
sudo yum install pcre-devel zlib-devel openssl-devel
二、安装方法

方法1:源码编译安装(推荐)

# 下载最新稳定版
wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0

# 配置编译参数
./configure \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-threads

# 编译安装
make && sudo make install

方法2:包管理器安装

# Ubuntu
sudo apt install nginx

# CentOS
sudo yum install epel-release
sudo yum install nginx
三、目录结构
/usr/local/nginx/
├── sbin/nginx          # 主程序
├── conf/nginx.conf     # 主配置文件
├── logs/               # 日志目录
└── html/               # 默认网站根目录
四、基本配置
  1. 主配置文件 (/usr/local/nginx/conf/nginx.conf)
user www-data;
worker_processes auto;

events {
    worker_connections 1024;
}

http {
    include mime.types;
    default_type application/octet-stream;
    
    server {
        listen 80;
        server_name localhost;
        
        location / {
            root html;
            index index.html;
        }
    }
}
  1. 常用命令
# 启动
sudo /usr/local/nginx/sbin/nginx

# 重载配置
sudo nginx -s reload

# 停止
sudo nginx -s stop

# 检查配置
sudo nginx -t
五、部署网站
  1. 创建网站目录
sudo mkdir -p /var/www/example.com
sudo chown -R www-data:www-data /var/www/example.com
  1. 添加虚拟主机
server {
    listen 80;
    server_name example.com www.example.com;
    
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;
    
    location / {
        root /var/www/example.com;
        index index.html;
    }
}
六、HTTPS配置
  1. 生成证书(使用Let’s Encrypt):
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
  1. 自动续期
sudo certbot renew --dry-run
七、性能优化
  1. 工作进程优化
worker_processes auto;  # 自动匹配CPU核心数
worker_cpu_affinity auto;
  1. 连接优化
events {
    worker_connections 4096;
    multi_accept on;
    use epoll;
}
  1. 缓冲区优化
client_body_buffer_size 10K;
client_header_buffer_size 1k;
client_max_body_size 8m;
large_client_header_buffers 4 4k;
八、常见问题排查
  1. 端口占用
sudo lsof -i :80
  1. 权限问题
sudo chown -R www-data:www-data /var/www
sudo setsebool -P httpd_can_network_connect 1  # SELinux系统
  1. 日志分析
tail -f /var/log/nginx/error.log
grep "50[0-5]" /var/log/nginx/access.log
九、高级功能
  1. 负载均衡
upstream backend {
    server 192.168.1.10:8000 weight=3;
    server 192.168.1.11:8000;
    server 192.168.1.12:8000 backup;
}

server {
    location / {
        proxy_pass http://backend;
    }
}
  1. 缓存配置
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;

server {
    location / {
        proxy_cache my_cache;
        proxy_cache_valid 200 302 10m;
    }
}

部署验证:访问 http://服务器IP 应显示Nginx欢迎页,或使用命令 curl -I http://localhost 检查HTTP响应头。

此指南涵盖从基础安装到生产环境部署全流程,建议根据实际需求调整配置参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

稻香味秋天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值