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
相关推荐
檀越剑指大厂1 小时前
【Linux系列】Linux中的复制与迁移
linux·运维·服务器
weixin_307779131 小时前
采用Amazon SES解决电商邮件延迟:以最小化运维实现最大效率的方案选择
运维·云原生·架构·云计算·aws
Keine Zeit1 小时前
虚拟机Linux(Ubuntu)忘记登录密码
linux·运维·ubuntu
石像鬼₧魂石1 小时前
Ubuntu 渗透测试步骤
linux·运维·ubuntu
虾..1 小时前
Linux 文件系统与inode结构
linux·运维·服务器
南山星火1 小时前
Ubuntu 22.04 与 24.04 系统常用命令
linux·运维·ubuntu
cicada152 小时前
如何在Windows系统下使用Linux环境?
linux·运维·windows
雅菲奥朗2 小时前
雅菲奥朗SRE知识墙分享(九)『DevOps & SRE 如何实现职场转型?』
运维·devops·sre
今天也想MK代码2 小时前
数据模型与持久化存储
linux·运维·ubuntu