Nginx 和 IIS 实现动静分离

  前段时间,搞Nginx+IIS的负载均衡,想了解的朋友,可以看这篇文章:《nginx 和 IIS 实现负载均衡》,然后也就顺便研究了Nginx + IIS 实现动静分离。所以,一起总结出来,与大家共同探讨。

 

  动静分离,说白了,就是将网站静态资源(HTML,JavaScript,CSS,img等文件)与后台应用分开部署,提高用户访问静态代码的速度,降低对后台应用服务器的请求。后台应用服务器只负责动态数据请求。

    优势:分担负载,减轻web服务器的压力,适用于大负载。

       静态资源放置cdn,同时还可以通过配置缓存到客户浏览器中,这样极大减轻web服务器的压力。

    劣势:网络环境不佳时,ajax回应很慢,导致页面出现空白,出错处理会不好看。

       不利于网站SEO(搜索引擎优化) ,

       增加了开发复杂度。

 

  实现方案:动静分离的一种做法是将静态资源部署在nginx上,后台项目部署到Web应用服务器上,根据一定规则静态资源的请求全部请求nginx服务器,达到动静分离的目的。

       

 

  配置

    1. 在location / {}  上方添加 , nginx 的其他配置,请参考前一篇文章《nginx 和 IIS 实现负载均衡》

        #静态资源缓存设置
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$  {
            root static;    #static文件夹在Nginx目录下没有,需创建,和conf文件夹同级
            expires      30d;
        }
        location ~ .*\.(js|css)?$ {
            root static;
            expires      30d;
        }
        

    

    效果如下:

     

 

    2. 在Nginx 下 创建 static 目录,将图片,js, css 等文件 拷贝到该目录下

      注意:最好,网站的原来静态文件目录最好还是保留,我的测试网站是asp.net mvc 删掉相关目录,网站启动会提示找不到相关目录,

 

 

  保存,重启Nginx,访问http://localhost:10089,

 

 

时间: 2024-09-20 01:05:39

Nginx 和 IIS 实现动静分离的相关文章

Nginx配合Apache或Tomcat的动静分离基本配置实例_nginx

其实本人比较喜欢nginx跑静态和做负载反向代理,动态php还是交给apache处理比较稳定,jsp就交给tomcat.resin或jboss.nginx跑静态的能力是无与伦比的,是目前web服务器里最强的.nginx和apache.tomcat.resin的动静分离配置其实很简单,就几句配置,稳定性也非常好. 1.nginx和apache的动静分离配置: 把下面配置放到nginx配置文件相应的server { }里面,如果使用其他端口号,改一下就行: #所有php的动态页面均交由apache处

nginx+tomcat实现动静分离(转)

本文设计的动静分离结构   在本文中,我们将静态资源放在 A 主机的一个目录上,将动态程序放在 B 主机上,同时在 A 上安装 Nginx 并且在 B 上安装 Tomcat.配置 Nginx,当请求的是 html.jpg 等静态资源时,就访问 A 主机上的静态资源目录:当用户提出动态资源的请求时,则将请求转发到后端的 B 服务器上,交由 Tomcat 处理,再由 Nginx 将结果返回给请求端.   提到这,可能有您会有疑问,动态请求要先访问 A,A 转发访问 B,再由 B 返回结果给 A,A

tomcat+nginx动静分离后 图片上传问题

问题描述 tomcat+nginx动静分离后 图片上传问题 采用动静分离后我怎么通过java代码把图片上传到nginx服务器上呢. nginx可以放在windows下吗? 解决方案 Nginx + Tomcat 实现动静分离Nginx+Tomcat实现反向代理与动静分离Nginx+Tomcat实现动静分离

Nginx + Tomcat 动静分离实现负载均衡(转)

0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

简单实现nginx+tomcat的反向代理与动静分离_Tomcat

windows下测试 nginx+tomcat实现java web项目的动静分离 1. 安装nginx,访问静态资源 安装成功后,启动nginx,浏览器输入http://localhost/出现欢迎页面. 在nginx下依次建立目录 static\test1\js\common,并将jquery.XX.js 放进去. PS: static 代表静态文件主目录,test1 代表tomcat下的项目名称,本机使用jquery-1.12.1.min.js 修改配置文件nginx.conf,添加如下配置

基于centos 6.5使用varnish实现网站动静分离_Linux

一.Varnish简介 Varnish是一款高性能.开源的反向代理服务器和缓存服务器,其开发者Poul-Henning Kamp是FreeBSD核心的开发人员之一. Varnish主要运行两个进程:Management进程和Child进程(也叫Cache进程). Management进程主要实现应用新的配置.编译VCL.监控varnish.初始化varnish以及提供一个命令行接口等.Management进程会每隔几秒钟探测一下Child进程以判断其是否正常运行,如果在指定的时长内未得到Chil

详解Ngigx+Tomcat配置动静分离,负载均衡_nginx

由于公司使用过Ngnix,对于刚接触Nginx来说,感觉有些好奇,于是研究了下. 本人在windows下使用的版本是nginx-1.8.1: 1. 启动Ngnix 双击nginx-1.8.1文件夹中nginx.exe,当任务管理器中存在两个nginx进程时,则说明启动成功! 2. Ngnix常用命令 nginx -s stop 强制关闭 nginx -s quit 安全关闭 nginx -s reload 改变配置文件的时候,重启nginx工作进程,来时配置文件生效   nginx -s reo

nginx均衡iis站点访问报错时能不能不在均衡

问题描述 nginx均衡iis站点访问报错时能不能不在均衡 你好,我这边如果起重一台机器的IIS是通的,但是我程序的站点访问报错,指令不访问这台机器吗 解决方案 首先查看nginx的access,error log,看是否有错误信息.如果错误来自IIS,再查看IIS的log 解决方案二: 把你的nginx的日志开起来.具体看博客:http://blog.csdn.net/xmtblog/article/details/42295181然后查看你的日志信息:

如何实现网站文件动静分离

背景 传统动静不分离的产品架构,随着访问量在增长,性能会成为瓶颈.以一个常见的Web站点为例.www.acar.com是一个刚建立汽车资讯车友交流网站,主站用Php搭建,有10GB的图片素材,部分JS文件.目前购买一台ECS放置所有程序代码,并在ECS上安装MySQL数据库.随着用户访问量的不断增长,不少用户反映,访问网站的速度越来越慢,图片加载慢,网站响应慢,同时网站技术人员也发现用户上传的图片越来越多,快超过1TB了.在这种情况下,用户可以通过利用OSS和CDN对网站进行架构优化,做到网站文