介绍
下载和安装
因为nginx是用c语言来开发的,所以需要下一些依赖包,在Linux系统上进行操作
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
第二行是直接在Linux系统进行下载,也可以在本机下载然后上传。这里wget命令可能还没安装,或需要先安装wget命令yum install wget
第四行表示的是安装nginx时会安装到指定的目录里面去,需要先创建这个目录
mkdir -p /usr/local/nginx
然后再进行安装若安装出错可试试下面代码
yum -y install openssl openssl-devel
安装完成之后进入/usr/local/nginx目录
Nginx目录结构
若要像右图所示展示树形结构的文件,首先安装一下tree,yum install tree,然后再输入tree即可展示树形结构。
Nginx常用命令
查看版本
启动和停止命令
启动完之后可以尝试访问nginx的首页面,在html目录里面有个index.html页面,然后可以通过当前的ip addr进行访问,端口号为80,可以不写。因为80端口是许多web服务器的默认端口,比如iis和apache,所以为了方便,浏览器在不知道请求端口的情况下默认会访问服务器的80端口,直接在浏览器输入ip地址即可访问,同时注意Linux系统防火墙是否关闭
firewall-cmd --zone=public --list-ports 查看已开放的端口号
重新加载配置文件
配置环境变量
因为上述的命令都需要在nginx目录下才能输入,若配置了环境变量之后在任意目录下都可以输入。
在此目录下进行配置
在最下面的PATH路径中加入了nginx的路径
让配置文件立即生效。注意:若使用yum下载的话会自动配置环境变量
Nginx配置文件结构
Nginx具体应用
使用Nginx主要有三个用途,部署静态资源、反向代理、负载均衡
部署静态资源
若是在前后端分离的项目,会把后端工程部署到Tomcat上,把前端工程部署到Nginx。
对应了nginx的配置文件,listen表示监听的端口号,servername表示服务器名称通常用域名,,location/表示的是访问的路径,若直接访问ip地址则跳转的是index.html,若是ip地址后还有路径则跳转的是html文件夹下相应的文件。
反向代理
反向代理是目前使用很多的一个功能。在说反向代理之前,先了解一下正向代理的功能
正向代理和反向代理的区别,举个栗子:你买东西的时候找代理人帮你去买就是正向代理,找代理商卖给你东西就是反向代理,厂商就是web服务器,代理商就是nginx反向代理服务器。
为什么要提出反向代理服务器呢?因为公司的外部服务器可能非常多,若各个客户端都对应的去访问不同的外部服务器不便于管理,于是引入了反向代理服务器,统一了一个入口。还有一个情况是,很多时候web服务器是存在于公司的一个内网之中,所以不能直接进行访问,但是反向代理服务器是对外开放的。
Nginx服务器就可以提供反向代理这个功能。
配置反向代理
正向代理是在客户端进行设置,而反向代理是在服务端进行设置的。注意:在使用虚拟机进行测试时,一定要注意8080端口号是否开放.(75条消息) 一文看懂 80端口与8080端口有什么区别?_luluoluoa的博客-CSDN博客_8080端口,(因为视频实例中访问的服务器是springboot的项目,而springboot内置的服务器是tomcat,所以访问的是8080端口)
在配置完成之后,客户端访问192.168.138.101:82即可访问到要访问的web服务器
负载均衡
右侧的两台web服务器构成了一个应用集群,而这个负载均衡器可以由Nginx来实现
这里的负载均衡算法,默认没有配置的话就是轮询算法,也可以自己配置算法