目录
一.什么是Nginx
二.Nginx优缺点
1.优点
2.缺点
三.正向代理与反向代理
1.正向代理
2.反向代理
四.安装配置
1.添加Nginx官方yum源
2.使用yum安装Nginx
3.配置防火墙
4.启动后效果
一.什么是Nginx
Nginx(“engine x”)是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用Nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
官网地址:nginx news
二.Nginx优缺点
1.优点
-
高并发量:根据官方给出的数据,能够支持高达 50,000 个并发连接数的响应。
-
内存消耗少:处理静态文件,同样起web 服务,比apache 占用更少的内存及资源,所以它是轻量级的(至于区别在哪?后面内容进行分析)。
-
简单稳定:一般在使用 Nginx 中,针对单个域名配置文件配置接口,学习成本很低。相比 Apache 配置简单很多。
-
模块化程度高:Nginx是高度模块化的设计,编写模块相对简单,包括 gzipping, byte ranges, chunked responses,以及 SSI-filter 等 filter,支持 SSL 和 TLSSNI。
-
支持Rwrite重写规则:能够根据域名、URL的不同, 将HTTP请求分发到不同的后端服务器群组。
-
低成本:Nginx可以做负载均衡,且Nginx是开源免费的,如果使用商业软件F5等硬件来做负载均衡,硬件成本比较高。
-
支持多系统:Nginx是由C语言开发,适用于各个平台。
2.缺点
-
动态处理能力较差:nginx处理静态文件好,耗费内存少,但是处理动态页面则很鸡肋,现在一般前端用nginx作为反向代理抗住压力,apache作为后端处理动态请求。
-
rewrite弱:虽然Nginx支持rewrite功能,但是相比于Apache来说,Apache比Nginx 的rewrite 强大。Apache 配置 rewrite 是通过项目下面的.htaccess 文件做配置还有就是打开 Apache 配置中的 rewrite 模块。而 Nginx 则需要在做域名配置时,对 rewrite 做配置。
三.正向代理与反向代理
1.正向代理
在客户端(浏览器)配置代理服务器,通过代理服务器进行互联网访问。正向代理“代理”的是客户端,而且客户端是知道目标的,而目标是不知道客户端是通过代理服务器访问的。
例如:通过浏览器我们并不能直接访问谷歌,但是我们可以借助VPN来实现访问,其实这就是一个比较简单的正向代理的例子。
2.反向代理
客户端不需要任何配置就能访问,只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器,获取数据后再返回给客户端。对外就一个服务器,暴露的是反向代理服务器地址,隐藏了真实服务器IP地址。代理对象是服务端,不知道客户端是谁。
例如:当我们在外网访问百度的时候,其实会进行一个转发,代理到内网去,这就是所谓的反向代理
四.安装配置
1.添加Nginx官方yum源
添加 nginx 官方提供的yum源
rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm
Linux里rpm包到底是干什么用的?
Linux RPM全称是“RedHat Package Manager”,最早是Red Hat公司开发的,后来在CentOS、Fedora、SUSE都用它。而rpm包则是软件编译完成后按照RPM机制打包起来的一个文件,可以用rpm命令安装的一个软件安装包,它省去了Linux软件安装中编译的步骤,安装成功后软件就可以用了
2.使用yum安装Nginx
yum方式安装nginx,它的安装根目录为/etc/nginx。
yum -y install nginx
查看nginx版本:
rpm -qa | grep nginx
操作效果演示:
3.配置防火墙
将nginx默认访问端口80进入到防火墙中。
firewall-cmd --zone=public --add-port=80/tcp --permanent &&
firewall-cmd --reload &&
firewall-cmd --list-port
操作效果演示:
4.启动后效果
# 启动nginx服务
systemctl start nginx
# 查询nginx服务启动状态
systemctl status nginx
启动成功后,在浏览器中输入访问地址,效果如下: