2019-10-11

Nginx

1.什么是Nginx

Nginx 是一个很强大的高性能Web和反向代理服务,它具有很多非常优越的特性:在

连接高并发的情况下,Nginx 是Apache 服务不错的替代品。是由伊戈尔· 赛索耶夫

为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本 0.1.0

发布于2004年10月4 日。

2. Nginx作用

a、 http协议代理(动静分离)

b、 服务的反向代理

c、在反向代理中配置集群的负载均衡

d、 搭建虚拟主机

3. Nginx相关概念

3.1 正向代理

正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从

原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原

始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。

3.2 反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然

后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连

接的客户端,此时代理服务器对外就表现为一个反向代理服务器。



3.3 二者之间的区别

位置不同

正向代理,架设在客户机和目标主机之间; 

反向代理,架设在服务器端;

代理对象不同 

正向代理,代理客户端,服务端不知道实际发起请求的客户端; 

反向代理,代理服务端,客户端不知道实际提供服务的服务端;

4.nginx的安装


4.1、安装c语言环境

yum install gcc-c++

yum install -y pcre pcre-devel

yum install -y zlib zlib-devel

yum install -y openssl openssl-devel

4. 2、安装nginx

a、上传nginx安装包:/usr/upload

b、解压安装包:tar -zxvf nginx-1.8.1.tar.gz

c、编译

cd nginx-1.8.1

./configure --prefix=/usr/local/nginx

注意:上边将临时文件目录指定为/var/temp/nginx,需要在/var 下创建 temp 及 nginx

目录

也可直接解压后的目录拷贝到、usr/local/nginx

d、安装

make

make install

5、常用命令:

5.1 启动:

cd /usr/local/nginx/sbin/

./nginx

5.2 停止nginx

方式1,快速停止:

cd /usr/local/nginx/sbin

./nginx -s stop

此方式相当于先查出 nginx进程id 再使用kill命令强制杀掉进程。

方式2,完整停止(建议使用):

cd /usr/local/nginx/sbin

./nginx -s quit

此方式停止步骤是待 nginx进程处理任务完毕进行停止。

5.3 重启nginx

./nginx -s reload

6.Nginx的使用

6.1 配置虚拟主机

6.1.1 什么是虚拟主机

虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主

机,每个虚拟主机可以独立对外提供 www 服务,这样就可以实现一台主机对外提供多个

web 服务,每个虚拟主机之间是独立的,互不影响的。

6.2 Nginx的虚拟主机配置方式

Nginx支持三种类型的虚拟主机配置

配置信息介绍:

main:用于进行 nginx全局信息的配置

events:用于 nginx工作模式的配置

http:用于进行http协议信息的一些配置

server:用于进行服务器访问信息的配置

location:用于进行访问路由的配置

upstream:用于进行负载均衡的配置

6.2.1.  基于IP 的虚拟主机

修改 Nginx 的配置文件完成基于 IP的虚拟主机配置

  设置基于两个ip的server

6.2.2.  基于端口的虚拟主机

设置监听两个端口server

6.2.3.  基于域名的虚拟主机

在配置文件中server_name 后改为域名,设置两个域名的server

6.2.3.1 配置nginx代理域名

1、修改修改C:\Windows\System32\drivers\etc\hosts

192.168.75.148 www.wokao.com

2、修改nginx.conf

server{

listen 80;

server_name www.wokao.com

}

6.3 Nginx中配置服务的反向代理

nginx代理一台tomcat(反向代理)

修改conf/nginx.conf:

    第一种:

  location /{

       proxy_pass http://127.0.0.1:8080;

  }

  第二种:

  upstream myTomcats{

          server 127.0.0.1:8080;

  }

    server{

      listen      80;

       server_name  localhost;

      location /{

      proxy_pass http://myTomcats;

       }

  }

6.4 在反向代理中配置负载均衡

6.4.1 什么是负载均衡 

负载均衡,英文名称为 Load Balance,其意思就是分摊到多个操作单元上

进行执行,例如Web 服务器、FTP服务器、企业关键应用服务器和其它关键任务

服务器等,从而共同完成工作任务。

配置步骤:

1、在/usr/java目录中上传两台tomcat,并命名为tomcat1、tomcat2

2、修改tomcat2的端口号(+10)

并修改tomcat2的端口号

3、创建test项目,分别发布到两台tomcat中,并测试

4、nginx代理两台tomcat:

  upstream myTomcats{

server 127.0.0.1:8080 weight=5;

server 127.0.0.1:8090 weight=1;

  }

server{

listen      80;

server_name  localhost;

location /{

proxy_pass http://myTomcats;

}

    }

6.4.2 Nginx负载均衡策略

1)轮询(默认)

每个请求按次数顺序逐一分配到不同的后端服务器,如果后端服务器 down掉,能自动剔除。 

2)指定权重

指定轮询几率,weight 和访问比率成正比,用于后端服务器性能不均的情况。 

3)IP绑定 ip_hash

每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器,可以解决 session丢失的问题。 

6.4.3 tomcat集群的session丢失问题

方式一:保证一个ip永远只访问一台tomcat(只支持linux)

upstream中添加 ip_hash;

方式二:session共享

一种使用tomcat广播机制完成session的共享(只支持windows,不推荐的方式)

一种使用redis服务器的方式完成session的共享(推荐的方式)

6.5 http协议代理

由于ftp服务器是基于 ftp 协议处理的。那么现在我想在外部访问该图片,是没有办法

访问的。他是不能处理 http协议的。所以我们需要拥有一个能够处理http协议代理服务器。

其实就是使用了Nginx 的虚拟主机的方式。

6.5.1  http协议代理配置

1、创建静态资源:在/usr/upload创建images文件夹,并上传图片

2、配置动静分离:

location / {

root /usr/upload/images;

}

注意:做FTP反向代理时,配置文件需要配置用户权限才能访问ftp用户目录。

cd /usr/local/nginx/conf/

vim nginx.conf

如下所示:

ru
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,110评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,443评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,474评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,881评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,902评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,698评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,418评论 3 419
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,332评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,796评论 1 316
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,968评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,110评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,792评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,455评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,003评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,130评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,348评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,047评论 2 355

推荐阅读更多精彩内容