Nginx主要应用:

静态web服务器

负载均衡

静态代理
虚拟主机

静态代理

  :把所有静态资源的访问改为访问nginx,而不是访问tomcat,因为nginx更擅长于静态资源的处理,性能更好,效率更高;

所以在实际应用中,我们将静态资源比如图片、css、html、js等交给nginx处理,而不是由tomcat处理;

Nginx静态代理如何实现?(通过在Nginx的nginx.conf文件进行配置即可实现)
方式一:
通过在nginx.conf配置文件中添加静态资源的location,比如:
#当访问静态资源,则从linux服务器/opt/static目录下获取(举例)
  location ~ .*\.(js|css|htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$ {
    root /opt/static;
  }
其中:
  ~ 表示正则匹配,也就是说后面的内容可以是正则表达式匹配;
  第一个点 . 表示任意字符;
  * 表示一个或多个字符;
  \. 是转移字符,是后面这个点的转移字符;
  | 表示或者
  $ 表示结尾
整个配置表示以 .后面括号里面的这些后缀结尾的文件都由nginx处理;
放置静态资源的目录,要注意一下目录权限问题,如果权限不足,给目录赋予权限;
方式二:
  通过在nginx.conf配置文件中配置静态资源所在目录实现,比如:
    location ~ .*/(css|js|img|images|image) {
      root /opt/static;
    }
我们将静态资源放入 /opt/static 目录下,然后用户访问时由nginx返回这些静态资源;

动静分离:

  Nginx的负载均衡 和 静态代理 结合在一起,我们可以实现动静分离。

  动态资源,如jsp由tomcat或其他web服务器完成;
  静态资源,如图片、css、js等由nginx服务器完成;
它们各司其职,专注于做自己擅长的事情;
动静分离充分利用了它们各自的优势,从而达到更高效合理的架构;
动静分离示例

负载均衡Nginx配置:
    upstream www.p2p.com {
      server 127.0.0.1:9100 weight=5;
      server 127.0.0.1:9200 weight=2;
    }

  upstream static.p2p.com {
    server 127.0.0.1:81 weight=1;
    server 127.0.0.1:82 weight=1;
  }
  location /p2p {
    proxy_pass http://www.p2p.com;
  }

  location ~ .*/(css|js|img|images) {
    proxy_pass http://static.p2p.com;
  }
静态代理Nginx配置:
  location ~ .*/(css|js|img|images) {
    root /opt/static;
  }

nginx的应用【静态代理、动静分离】的更多相关文章

  1. linux+apache+nginx实现,反向代理动静分离

    在我们开发的过程中,一定会遇到,负载均衡方面的问题.下面我们,做一个小例子:使用nginx+apache实现反向代理,动静分离. 这里apache.php.nginx的安装就不做赘述了,不懂的朋友可以 ...

  2. Nginx+Tomcat负载均衡、动静分离群集

    Nginx+Tomcat负载均衡.动静分离群集 目录 Nginx+Tomcat负载均衡.动静分离群集 一.Tomcat 1. Tomcat简介 2. Tomcat重要目录 二.Nginx负载均衡原理 ...

  3. [nginx] - 使用nginx实现反向代理,动静分离,负载均衡,session共享

    反向代理概念 先说正向代理,比如要访问youtube,但是不能直接访问,只能先找个FQ软件,通过FQ软件才能访问youtube. FQ软件就叫做正向代理.所谓的反向代理,指的是用户要访问youtube ...

  4. Nginx--Windows环境下Nginx+tomcat配置(包括动静分离)

    前提条件: (1)已安装好tomcat,且能成功启动 (2)已安装好Nginx,且能成功启动 接下来进行配置: (1)在Nginx的conf文件夹中新增两个文件,分别如下:(新建文件后,直接复制代码即 ...

  5. 利用nginx实现负载均衡和动静分离

    1.Nginx介绍 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器 . Nginx 是由 ...

  6. Nginx+Tomcat配置负载均衡-动静分离(二)

    配置动静分离的时候遇到了一些问题,一个是配置nginx配置文件有问题导致访问不到服务器,另一个问题是配置静态资源的路径和实际的资源目录不匹配导致404,502等错误 结合上一篇的基础,在此将动静分离的 ...

  7. Nginx详解十七:Nginx深度学习篇之动静分离

    动静分离:通过中间件将动态请求和静态请求分离 作用:分离资源,减少不必要的请求消耗,减少请求延时 动静分离还有个好处就是,当动态请求的后端服务出问题了,只会影响动态的部分,静态资源不影响,照样加载 如 ...

  8. Docker的安装和镜像管理并利用Docker容器实现nginx的负载均衡、动静分离

    Docker的安装 一.Docker的概念 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化 ...

  9. Linux下Nginx+Tomcat负载均衡和动静分离配置要点

    本文使用的Linux发行版:CentOS6.7 下载地址:https://wiki.centos.org/Download 一.安装Nginx 下载源:wget http://nginx.org/pa ...

  10. nginx配置优化+负载均衡+动静分离详解

    nginx配置如下: #指定nginx进程运行用户以及用户组user www www;#nginx要开启的进程数为8worker_processes 8;#全局错误日志文件#debug输出日志最为详细 ...

随机推荐

  1. sklearn简单线性回归

    from sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn.linear_ ...

  2. Python第一阶段02

    1.模块: import sys print(sys.path) # 打印环境变量 print(sys.argv) # 打印当前文件绝对路径 # print(sys.argv[]) import os ...

  3. python3传文件到linux服务器然后解压

    #!/usr/bin/env python # -*- coding:utf-8 -*- import os import paramiko import time from scp import S ...

  4. django自带的用户验证是验证username和password,如何自定义验证功能,让mobil也能作为账户名登录?

    users.views.pyfrom django.contrib.auth.backends import ModelBackendfrom django.db.models import Qcla ...

  5. 微信小程序常用控件汇总

    1.图片标签: <image src="/images/aaa.png"></image> 2.文本标签: <text>Hello</te ...

  6. 038 Android Magicindicator开源框架实现viewpager底部圆形指示器

    1.Magicindicator介绍 Magicindicator是一个强大.可定制.易扩展的 ViewPager 指示器框架.是ViewPagerIndicator.TabLayout.PagerS ...

  7. 多线程(7)— JDK对锁优化的努力

    JDK内部的“锁”优化策略 1. 锁偏向 锁偏向是针对加锁操作的优化手段,核心思想是:如果一个线程获得了锁,那么锁就进入偏向模式,当这个线程再次请求锁时,无须再做任何同步操作,这样就节省了大量有关锁申 ...

  8. HCIA SWITCHING&ROUTTING 笔记——第一章 TCP/IP基础知识(1)

    视频地址:https://ilearningx.huawei.com/courses/course-v1:HuaweiX+EBGTC00000336+Self-paced/courseware/abb ...

  9. Python2和3字符编码的区别

    Python2和3字符编码的区别 一.字符编码应用之Python 1.1 执行Python程序的三个阶段 Python test.py(我再强调一遍,执行test.py的第一步,一定是先将文件内容从硬 ...

  10. oracle DBA操作

    sqlplus sys/tiger  as sysdba; alter user scott account unlock; 用户已更改 切换用户:conn scott/tiger as sysdba ...