Nginx简介

Nginx是一个高性能的Web服务器和反向代理的软件。

Web服务器:就是运行我们web服务的容器,提供web功能,还有tomcat也提供类似的功能。

代理是软件架构和网络设计中,非常重要的一个概念。

有两种代理:正向代理和反向代理。

正向代理:

正向代理(客户端代理)类似一个跳板机,接收客户端请求代理访问外部资源。

比如我们国内访问谷歌,直接访问访问不到,我们可以通过一个正向代理服务器,请求发到代理服,代理服务器能够访问谷歌,这样由代理去谷歌取到返回数据,再返回给我们,这样我们就能访问谷歌了。

作用:

(1)访问原来无法访问的资源,如google

(2) 可以做缓存,加速访问资源

(3)对客户端访问授权,上网进行认证

(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息




nginx 正向代理服务器上网 nginx作为代理服务器_负载均衡


反向代理:

反向代理(服务端代理),与正向代理相反,接收客户端的请求,然后代理请求分发到服务端内网的N个节点上。实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以叫成了反向代理

作用:

(1)保证内网的安全,阻止web攻击,大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。

(2)负载均衡,通过反向代理服务器来优化网站的负载。


nginx 正向代理服务器上网 nginx作为代理服务器_nginx_02


总结:

正向代理: 买票的黄牛(服务端不知道实际发起请求的客户端是谁)

反向代理: 租房的代理(服务端不知道实际响应的服务端是谁)

Nginx安装

1. 安装:yum

[root@localhost /]# yum install yum-utils

2. 切换目录:

[root@localhost /]# cd /etc/yum.repos.d/

3. 创建文件:

[root@localhost yum.repos.d]# touch nginx.repo

4. 修改文件内容:

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

5. Nginx的安装:

[root@localhost yum.repos.d]# yum install nginx

Nginx启动及验证

找到命令目录:

[root@localhost sbin]# pwd
/usr/sbin
[root@localhost sbin]#

启动命令:

[root@localhost sbin]# ./nginx
[root@localhost sbin]# ps -ef | grep nginx
root 2536 1 0 09:28 ? 00:00:00 nginx: master process ./nginx
nginx 2537 2536 0 09:28 ? 00:00:00 nginx: worker process
root 2539 2053 0 09:28 pts/1 00:00:00 grep --color=auto nginx

验证nginx本机访问是否成功:

[root@localhost sbin]# curl localhost:80

如果出现:Welcome to nginx!,证明nginx启动成功。

关闭防火墙:

先查询防火墙的状态:[root@localhost sbin]# systemctl status firewalld

关闭防火墙:[root@localhost sbin]# systemctl stop firewalld

这样,在宿主机的浏览器中就可以访问了。

开机禁用防火墙:

[root@localhost sbin]# systemctl disable firewalld