Nginx安装部署

一、nginx概念

Nginx(发音为"engine-x")是一个高性能开源的web服务器,同时也充当反向代理服务器,负载均衡http缓存 等功能。

反向代理和正向代理

1.1 核心特性

  • 高性能事件驱动架构:采用异步非阻塞I/O模型

  • 高并发处理:单服务器可支持数万并发连接

  • 低内存消耗:相比传统服务器更节省资源

  • 模块化设计:丰富的模块生态系统

  • 热部署:支持不中断服务的情况下更新配置和二进制文件

1.2 代理模式对比

正向代理(Forward Proxy)

客户端 → 正向代理服务器 → 互联网

↑ ↓

(配置代理) (代表客户端请求)

特点:

  • 客户端主动配置

  • 代理客户端发起请求

  • 客户端知道代理的存在

  • 目标服务器不知道真实客户端

应用场景:

  1. 企业网络管控

  2. 访问受限资源(科学上网)

  3. 客户端匿名访问

  4. 内容过滤和审计

反向代理(Reverse Proxy)

客户端 → 反向代理服务器 → 后端服务器集群

↑ ↓

(以为这是真实服务器)(隐藏真实服务器)

特点:

  • 服务端部署,客户端无需配置

  • 代理后端服务器接收请求

  • 客户端不知道后端服务器的存在

  • 提升安全性和可扩展性

应用场景:

  1. 负载均衡

  2. 应用防火墙

  3. SSL终端和加密

  4. 内容压缩和缓存

  5. A/B测试和金丝雀发布

二、nginx安装

1.使用yum安装

bash 复制代码
#使用yum命令安装
yum -y install https://nginx.org/packages/centos/7/x86_64/RPMS/nginx
1.18.0-2.el7.ngx.x86_64.rpm
#检查是否安装成功
rpm -qa|grep nginx

 #启动 
systemctl start nginx
 #设置开机自启
systemctl enable nginx
 #停止
systemctl stop nginx   

#卸载
 yum -y remove nginx-1.18.0-2.el7.ngx.x86_64

2.使用源码包安装

下载解压

bash 复制代码
#1.创建一个文件夹,存放安装的nginx文件
mkdir /usr/local/nginx
#安装nginx依赖包
yum -y install gcc gcc-c++  pcre pcre-devel zlib zlib-devel openssl openssl-devel
#下载并解压nginx源码包
#创建文件夹存放安装包
mkdir /opt/soft/nginx -p
cd /opt/soft/nginx

#2.下载安装包
wget https://nginx.org/download/nginx-1.18.0.tar.gz
 #解压源码包
tar -zxvf nginx-1.18.0.tar.gz
 #切换到解压后的包中
cd nginx-1.18.0

配置编译并安装

bash 复制代码
./configure --user=root --group=root --prefix=/usr/local/nginx \ --with-http_ssl_module  \ --with-http_v2_module \ --with-http_stub_status_module \ --with-http_gzip_static_module \ --with-http_sub_module --with-stream  \ --with-stream_ssl_module \ --with-openssl-opt=enable-weak-ssl-ciphers 
#执行编译 
make 
#安装 
make install

启动

bash 复制代码
#切换到启动文件目录 
cd /usr/local/nginx/sbin 
#启动 
./nginx 
#或者使用绝对路径进行启动 
/usr/local/nginx/sbin/nginx 
#重启nginx 
/usr/local/nginx/sbin/nginx -s reload 
#停止 
/usr/local/nginx/sbin/nginx -s stop

#启动并设置开机自启
systemctl enable nginx 
systemctl start nginx
相关推荐
好学且牛逼的马21 小时前
【工具配置|docker】
运维·docker·容器
文言一心1 天前
LINUX离线升级 Python 至 3.11.9 操作手册
linux·运维·python
北邮刘老师1 天前
A3C Network:智能体互联网的层次化视图
运维·服务器·网络
空中楼阁,梦幻泡影1 天前
LoRA 详细解析,使用LoRA 方式对模型进行微调详细操作指南
运维·服务器·人工智能·机器学习·语言模型
晚风吹长发1 天前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法
Le_ee1 天前
dc4打靶报告
运维·服务器·网络
yeflx1 天前
解决Ubuntu22.04宿主机docker容器中nvidia-smi偶发失效问题
运维·docker·容器
4t4run1 天前
28、Linux 系统定时任务
linux·运维·服务器
~黄夫人~1 天前
Ansible 自动化运维:从 “手动输密码” 到 “一键免密管理”
linux·运维·自动化·ansible
cui__OaO1 天前
Linux驱动--基于驱动设备分离的按键中断驱动
linux·运维·服务器·嵌入式