什么是Nginx?
是一个高性能的HTTP和反向代理web服务器,我们常用的功能有HTTP代理、负载均衡、动静分离、高可用集群,目前阶段我使用得比较多是就是代理和负载均衡,官方数据测试表明能够支持高达 50,000 个并发连接数的响应。占用的内存也特别的少。
优点:
1、负载均衡(可以减轻单台服务器的压力)2、反向代理(隐藏企业真实的ip地址)3、搭建虚拟服务器4、用做静态服务器(实现动静分离)5、nginx性能高、体积小、能支撑的并发量很高6、ddos攻击可以使用nginx解决7、解决ajax跨域问题1.Nginx的作用
Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理。
1.1 正向代理
正向代理是代理客户端,需要在客户端进行配置,我们访问的还是真实的服务器地址
(我们经常说的梯、子就是典型的正向代理)。
1.2 反向代理
反向代理是代理服务端,客户端不需要任何配置,客户端只需要将请求发送给反向代理服务器即可,代理服务器将请求分发给真实的服务器,获取数据后将数据转发给你。客户端是无感知的,也不需要进行任何的配置。
1.3 区别与总结
正向代理和反向代理最根本的区别在于代理的对象不同,正向代理的是客户端,反向代理的是服务端。
正向代理代理的是客户端
,需要为每一个客户端都做一个代理服务器,客户端访问的路径是目标服务器
反向代理代理的是服务端
,客户端不需要做任何的配置,访问的路径是代理服务器
,由代理服务器将请求转发到真实服务器
2. Nginx的基本命令
cd /usr/local/nginx/sbin/ ./nginx 启动 ./nginx -s stop 停止 ./nginx -s quit 安全退出 ./nginx -s reload 重新加载配置文件 ps aux|grep nginx 查看nginx进程
3. Nginx的安装
下载地址: nginx.org/en/download…
3.1 Windows下安装Nginx
3.1.1 下载并解压
下载好Nginx后解压到纯英文
路径的目录下。3.1.2 启动与关闭
启动Nginx 打开cmd命令窗口,切换到nginx解压目录下,输入令nginx
,回车即可 关闭Nginx 注意,我们关闭cmd窗口Nginx不会被关闭。 输入Nginx命令 nginx -s stop
(快速停止nginx) 或 nginx -s quit
(完整有序的停止nginx)
3.2.2 插件安装
1、安装gcc
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++
2、PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
3、zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
4、OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
3.3.3 配置nginx
使用默认配置,在压缩完的nginx的目录下执行【下个章节详细讲解nginx的配置】
cd nginx-1.20.2 切换到压缩好的nginx文件夹./configuremakemake install
3.3.4 启动与关闭
切换到nginx的sbin目录whereis nginx 不知道nginx安装目录的可以先执行这个命令查看
cd /usr/local/nginx/sbin/
./nginx
./nginx -s quit