了解并安装使用nginx

目录

1.什么是nginx

2.为什么使用nginx反向代理服务器

3.国内有哪些企业在使用nginx代理服务器

4.如何安装nginx代理服务器

5.nginx的配置文件的介绍

6.nginx的核心功能

6.1 反向代理

6.2 负载均衡

6.3 动静分离


1.什么是nginx

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强, 高达 50,000 个并发连接数的响应 ,事实上nginx的并发能力在同类型的网页服务器中表现较好。

2.为什么使用nginx反向代理服务器

3.国内有哪些企业在使用nginx代理服务器

中国大陆使用nginx网站用户有:百度、 京东 、 新浪 、 网易 、 腾讯 、 淘宝 等。

4.如何安装nginx代理服务器

nginx它使用c语言编写,通过源码的形式安装nginx.

 (1)先安装nginx需要的依赖环境

yum  install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

 (2)下载nginx

nginx: download

(3)把下载的nginx放入linux系统

(4)解压该压缩文件

tar -zxvf nginx-1.24.0.tar.gz

(5)创建一个目录作为nginx的安装目录

mkdir /usr/nginx

(6)进入解压后的目录  

指定nginx安装目录:

 ./configure --prefix=/usr/nginx 

(7)进行编译和安装操作

make 对nginx源码进行编译

make install 编译并安装

(8)查看安装nginx的目录中的内容  

conf: nginx的配置目录 nginx.conf

html: 静态资源目录

logs: 日志----如果启动nginx出现错误时,会在该目录下的日志文件中显示

sbin: 启动和关闭nginx的脚本目录

(9)启动nginx

sbin/nginx    启动nginx
sbin/nginx -s stop   关闭nginx
sbin/nginx -s reload  重新加载nginx配置

ps -ef | grep nginx 查看nginx的进程

(10)window浏览器 (宿主机)访问linux中的nginx代理服务器

http://nginx所在服务的ip:port

默认端口为80

5.nginx的配置文件的介绍

 自定义server:

 创建一个目录main 并在该目录下创建一个main.html。

 注意: 你修改nginx配置文件后,必须重新加载配置文件。./nginx  -s reload

一个nginx可以对应多个server

6.nginx的核心功能

6.1 反向代理

(1)正向代理

拿借钱打个比方,A想向C借钱,但是C不认识A所以不借给他,然后A就通过B向C借钱,B借到钱之后再转交给A,在这个过程中B就扮演了一个正向代理的角色,这个过程中,真正借钱的人是谁,C是不知道的~
我们常说的代理也就是指正向代理,正向代理的过程,它隐藏了真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务都被代理服务器代替来请求.

比如我想访问www.google.com,要想翻越这堵墙,你可以在国外用Shadowsocks来搭建一台代理服务器,代理帮我们请求www.google.com,代理再把请求响应结果再返回给我。思考: 谷歌是否知道真正的访问者。

正向代理: 代理的客户端,对于服务器来说不知道真实的客户。

 (2)反向代理

用借钱的例子,A想向C借钱,然后C借给他了,但是实际上这个钱可能C向B借的~至于钱到底是谁的,A是不知道的~这里的C扮演着一个反向代理的角色,客户不知道真正提供服务的人是谁。反向代理隐藏了真实的服务端,对于客户来说不知道访问的是哪台服务器。可以使用nginx反向代理。

 ①搭建nginx服务器,准备springboot项目并放入linux服务器系统

 运行项目: java -jar XXXX.jar

注意: linux环境中必须安装了jdk。  

 ②修改nginx配置文件的内容--192.168.184.250

 

 重新加载nginx配置文件:

/usr/nginx/sbin/nginx -s reload

6.2 负载均衡

随着访问量的不断增加,一台真实服务器无法处理那么多请求。这时需要搭建真实服务器的集群。如何把请求均摊到集群的不同服务器上。 需要负载均衡组件,该组件可以帮你完成把请求均摊到集群服务器。

真实服务器准备2台

upstream: 定义集群信息

nginx重新加载配置文件

默认使用轮询策略

(1)权重策略:----合适服务器的配置不同,被访问的频率不同。

(2)ip_hash: ----根据客户端的ip分配相应真实服务器。  

(3)使用第三方插件:----大多数付费。  

6.3 动静分离

把静态资源【css,js,img】交于nginx来处理,而动态资源[接口,jsp]还是有真实服务器处理

好处: 当修改静态资源时,无需对每个真实服务器的静态资源做修改,只需要修改nginx一处的静态资源。

(1)如何完成动静分离

该工程中没有静态资源。

运行该工程: java -jar XXX.jar

(2)修改nginx配置文件  

server {
     listen 88;
     server_name localhost;
     location /{
         proxy_pass http://192.168.223.233:8080;

     }
     # 以jpg或css或js或png结尾的资源有nginx来处理,去static目录查找对应资源名称。  这里以相对路径为例
     location ~ \.jpg|.css|.js|.png$ {
          root static;
     }

 }

 注意: 把static目录放入到nginx的目录下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值