Nginx学习内容
1.理解Nginx在实际项目中的应用场景
2.理解正向代理和反向代理
3.Nginx在Linux和Windows上的安装
4.Nginx的运行模型概念与日志管理
5.Nginx.config核心配置文件与配置HTTPS证书
6.基于Nginx解决跨域,实现防盗链,缓存,压缩等问题
7.Nginx+Keepalived服务之间的实现高可用(负载均衡)
8.Nginx+lua+OpenResty实现亿级别商品详情页(限流等场景运用)
Nginx概述
- Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,第一个公开版本0.1.0发布于2004年10月4日。
- 其将源代码以类BSD许可证的形式发布,因它的稳定性,丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
- Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强。
相较于一般网关,nginx的优势是用c语言编写的,性能好些。
网关是对一系列服务进行拦截,nginx则调控网关
Nginx实际应用场景
1.反向代理:客户端发送请求达到Nginx服务器,Nginx转发到真实服务器访问,从而保证真实服务安全性。保护的是服务端的信息。(正向代理保护的是用户的信息)
2.负载均衡: 能够对集群的节点实现负载均衡和故障转移。。负载均衡算法(轮询、权重、随机、hash等)
3.微服务网关入口:可以对微服务网关实现集群
4.静态服务器:比Tomcat性能高很多,可以存放静态资源
5.保护网站:使用Nginx+lua实现对请求实现服务限流
Nginx安装
Windows
1.nginx下载地址:http://nginx.org/en/download.html
我下的是稳定版本,其他版本可自行尝试
2. 解压到你想要的目录
3.各个目录的功能
4.双击nginx.exe启动
可能会出现闪退,打开任务管理器,查看后台有没有运行
默认端口为80
在浏览器地址栏输入127.0.0.1:80
成功的界面:
失败的界面:
如果你想修改端口的话,可以在conf文件夹下面的nginx.conf配置文件中进行修改
找到server下面的listen监听端口设置成你想要的。
到此安装结束
Linux
1.下载相关软件压缩包
2.拖入相关文件夹(小编放在了 /usr/local/src,可以根据自己喜好安装)
拖动下载文件夹内的压缩包进入src目录,等待上传(Linux系统下的压缩包后缀是.tar.gz)
3. 输入指令 tar -zxvf XXXX.tar.gz 进行解压
这里是
tar -zxvf nginx-1.26.2.tar.gz
解压后会出现nginx-1.26.2
4.执行配置脚本,查看是否出错
命令:(/usr/local/src/nginx-1.26.2是安装目录)
./configure --prefix=/usr/local/src/nginx-1.26.2
正常情况:(没有报错)
网上看到有这样的报错:
给出解决方法
5.编译安装nginx
命令:
make &make install
6.启动nginx
启动命令:
/usr/local/src/nginx-1.26.2/sbin/nginx -c /usr/local/src/nginx-1.26.2/conf/nginx.conf
然后在浏览器输入自己的公网IP+端口号即可(默认80)
小编这里是已经在8088端口创建过一个实例了,所以nginx会报错
在Linux系统中可以使用以下命令来查看Nginx服务正在使用的端口
sudo netstat -tulnp | grep nginx
7.如果想换成自己想要的端口号
1)找到conf文件夹并输入vim nginx.conf进入
修改成自己想要的端口:
i是输入,esc :wq 是保存退出 ,esc :q! 是不保存直接退出
这个时候还要确保服务器允许监听你想要的端口和防火墙设置,否则会出现无法访问的情况
设置服务器规则
还有防火墙操作一并给到大家