Nginx学习与使用

在阅读本文前,请先安装好nginx,安装步骤可以看
Linux下安装Nginx

一、了解nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,作为一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少并发能力强

二、常用命令

使用nginx操作命令前提:必须进入到nginx的自动生成目录的下/sbin文件夹下
默认自动生成目录:

/usr/local/nginx

查看版本号

./nginx -v

启动

./nginx

停止

./nginx -s stop

重新加载

用于修改配置文件后,让nginx重新加载新的配置文件

./nginx -s reload

三、配置文件

配置文件默认在 /usr/local/nginx/conf

配置文件整体上分为三部分: 全局块、events块、http块

区域功能
全局块配置和nginx运行相关的全局配置
events块配置和网络连接相关的配置
http块配置代理、缓存、日志记录、虚拟主机等配置
在这里插入图片描述

通常我们配置的是http块

四、应用

nginx主要用于以下几种应用场景

  • 部署静态资源
  • 反向代理
  • 负载均衡

部署静态资源

nginx可以作为静态web服务器来部署静态资源(html页面、css文件、js文件、图片、视频)
相对于Tomcat,Nginx处理静态资源的能力更加高效,所以在生产环境下,一般都会将静态资源部署到Nginx中。

部署静态资源,只需要将文件复制到Nginx安装目录下的html目录中即可,然后修改nginx.conf。

以首页为例,这里指定了访问80端口时,默认访问index.html

server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

反向代理

概念

在之前,我们都是客户直接请求发送到服务端,这样就暴露了服务端的地址。

反向代理服务器位于用户目标服务器之间,以代理服务器来接收internet网上的连接请求,然后将请求转发给内部网络上的目标服务器,并从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个节点服务器。

在这里插入图片描述

反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率

例如:
我们平时访问百度时,直接访问www.baidu.com。
它背后可能有成千上万的服务器为我们服务,但具体是哪一台为我们服务,我们并不知道,也没必要知道。
我们只需要知道反向代理服务器是www.baidu.com就可以

Nginx就是性能非常好的反向代理服务器,用来做负载均衡

实例

目前作为代理服务器nginx的ip为 192.168.216.3,监听端口为80
希望它代理http://172.16.50.124:8086

目标服务器
在这里插入图片描述
通过修改nginx.conf

proxy_pass http://172.16.50.124:8086

在这里插入图片描述
重新加载nginx

./nginx -s reload

访问代理服务器192.168.216.3
在这里插入图片描述
代理成功

负载均衡

概念

将原先单个服务器的请求改向多个服务器发送请求,通过轮询发送到服务器集群,减少单个服务器的压力。

实例

目前有两个应用分别占用172.16.50.124的80868085端口
在这里插入图片描述

在这里插入图片描述
通过访问代理服务器实现负载均衡,把请求分散到这两个应用中。
修改nginx.conf。
在这里插入图片描述


    upstream myserver{
	    server 172.16.50.124:8086;
	    server 172.16.50.124:8085;
    }


    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
	    proxy_pass http://myserver;
            index  index.html index.htm;
        }

重新加载nginx

./nginx -s reload

测试,访问代理服务器192.168.216.3两次
在这里插入图片描述

在这里插入图片描述
负载均衡成功
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值