nginx在windows下配置缓存服务器缓存静态资源+Tomcat集群

nginx安装目录

修改nginx.conf文件配置负载均衡配置Tomcat集群并设置动静分离

#user  nobody;  

error_log  logs/error.log;  

worker_processes 2;
worker_rlimit_nofile 1024;
events {
    worker_connections 1024;
}

http {
    log_format  main  ‘$remote_addr - $remote_user [$time_local] "$request" ‘
                                        ‘"$status" $body_bytes_sent "$http_referer" ‘
                                        ‘"$http_user_agent" "$http_x_forwarded_for" ‘
                                        ‘"$gzip_ratio" $request_time $bytes_sent $request_length‘;
    access_log  logs/access.log  main;

    include mime.types;
        default_type application/octet-stream;

         charset gb2312;

         server_names_hash_bucket_size 128;
         client_header_buffer_size 32k;
         large_client_header_buffers 4 32k;
         client_max_body_size 8m;

         sendfile        on;
         tcp_nopush     on;

         keepalive_timeout  60;

         tcp_nodelay on; 

         fastcgi_connect_timeout 300;
         fastcgi_send_timeout 300;
         fastcgi_read_timeout 300;
         fastcgi_buffer_size 64k;
         fastcgi_buffers 4 64k;
         fastcgi_busy_buffers_size 128k;
         fastcgi_temp_file_write_size 128k; 

         gzip on;
         gzip_min_length  1k;
         gzip_buffers     4 16k;
         gzip_http_version 1.0;
         gzip_comp_level 2;
         gzip_types  text/plain application/x-javascript text/css application/xml;
         gzip_vary on;  

    #gzip  on;
    upstream  tomcat_server {
              server   localhost:9001 weight=1;
              #server   localhost:9002 weight=1;
    }
    server {
        listen       80;
        server_name  10.67.16.226;
        charset utf-8;  

    root static;
    #配置Nginx动静分离,定义的静态页面直接从Nginx发布目录读取。
    location ~ .*\.(htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|svg|eot|ttf|woff|woff2)$ {
      root static; #static前面不加 ‘/‘ 表示从nginx安装目录为根目录所以静态资源就可以放到static文件夹下, 加 ‘/‘ 表示已我们的本地磁盘根目录(如我D://static), 如果错误可以看logs下的error.log
      #expires定义用户浏览器缓存的时间为7天,如果静态页面不常更新,可以设置更长,这样可以节省带宽和缓解服务器的压力
      expires      7d;
       }

    location / {
        proxy_next_upstream http_502 http_504 error timeout invalid_header;
        proxy_set_header Host  $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://tomcat_server;
    }
        location ~ ^/(WEB-INF)/ {
        deny all;
        }   

        error_page   500 502 503 504  /50x.html;
    location = /50x.html {
            root   html;
        }
    }
} 

我的网站的静态资源都要从resource文件夹下读取(说明: 下面页面以.html结尾的不是完全静态的是局部静态, 就是使用ajax推送数据首页的数据多数是推送), 但是每次读取都是从tomcat下的resource直接读, 比如jquery, css, bootstrap之类的静态文件我现在就要把他们放到nginx;

看看下面的tomcat的root目录下并没有resource文件夹, 静态资源从nginx上直接读取并让客户端缓存; 我的tomcat端口为9001,下面来验证一下静态文件是从nginx上读取的;

访问本地9001端口tomcat

下面是访问nginx服务器(静态文件访问nginx动态由tomcat处理);

登录后

OK, 大功告成;

时间: 2024-10-07 06:32:58

nginx在windows下配置缓存服务器缓存静态资源+Tomcat集群的相关文章

Windows下配置Apache服务器并支持php

php环境的配置相对来说比较繁琐,网上教程大部分都是放一起说,总体感觉比较乱,其实Apache是一款通用的服务器软件,可以用来配置支持静态页面,php.Python.Java甚至asp等服务端语言,要把Apache理解成单独的服务器,并不一定和php搭档,只是和php配合是比较流行的一种组合方式,就比如lamp就是比较流行的网站架构,所以,首先我们来配置Apache,首先让服务器跑起来并能解析静态的html文件 首先我们去官网下载最新版本的Apache,首先来到首页:http://www.apa

windows下配置两个或多个Tomcat启动的方法

确保window的环境变量中找不到CATALINA_HOME和CATALINA_BASE 修改server.xml,用解压版的tomcat,不要用安装版的. 1.修改http访问端口 conf下的server.xml文件的服务访问端口,默认是8080可以改成其它的,如7000 2.修改shutdown端口 默认8005 3.修改jvm启动默认端口,默认端口为8009 <br><Connector port="8009" protocol="AJP/1.3&q

Windows下配置Git服务器和客户端 超全

为了配合Redmine使用,特地用Git来做版本控制. Git Candy© 是一个基于ASP.NET MVC的Git分布式版本控制平台,Git Candy的目标是轻松干掉Bonobo,逐渐追赶Github,并用微创新超过Github. 源码在:http://github.com/Aimeast/GitCandy演示在:http://git.53wb.com https://gitcandy.com/Repository Bonobo到GitCandy数据库转换程序:http://git.53w

Nginx + django windows下配置

1.下载nginx, 去http://nginx.org/en/download.html 下载,我下载的是1.8 stable版本. 2.配置文件/conf/nginx.conf #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { wo

Windows下配置Apache服务器

第一步:下载最新Apache. 下载网址:http://www.apachehaus.com/cgi-bin/download.plx 第二步:把下载文件解压缩到一个工作目录.D:\Apache 第三步:修改/conf/httpd.conf文件. 修改ServerRoot为Apache工作目录:D:/Apache 修改Listen 端口号,这里一定要用没有占用的端口号.由于我的机器80端口已经被占用,我用了81端口. 修改DocumentRoot,把DocumentRoot修改为D:\Apach

Tomcat集群session复制,httpd/nginx反代Tomcat集群

   一个大型站点都会涉及到动态应用,动态应用都需要做会话保持,常见的会话保持方式就三种,一是session stick,二是session replication,三是session share,对于小型规模的tomcat集群,大多者会采用session replication方式,但阅读官方文档也好,查询大牛博客也罢,发现均有不准确之处,所以亲测成功实现之后得出如下文档,还望高人指点. 实验环境: 操作系统:CentOS 7.2 tomcat版本:tomcat-7.0.54(yum安装方式)

windows 下配置 Nginx 常见问题

因为最近的项目需要用到负载均衡,不用考虑,当然用大名鼎鼎的Nginx啦.至于Nginx的介绍,这里就不多说了,直接进入主题如何在Windows下配置. 我的系统是win7旗舰版的,到官网下载最新版本 nginx/Windows-1.7.9解压到英文目录下(我刚开始是放到中文目录下的,启动时会有问题,下面常见错误里会讲到). 一.  Nginx配置 找到 conf 目录里的 nginx.conf 文件,配置Nginx #user nobody; #指定nginx进程数 worker_process

windows 下配置 Nginx 常见问题(转)

windows 下配置 Nginx 常见问题 因为最近的项目需要用到负载均衡,不用考虑,当然用大名鼎鼎的Nginx啦.至于Nginx的介绍,这里就不多说了,直接进入主题如何在Windows下配置. 我的系统是win7旗舰版的,到官网下载最新版本 nginx/Windows-1.7.9解压到英文目录下(我刚开始是放到中文目录下的,启动时会有问题,下面常见错误里会讲到). 一.  Nginx配置 找到 conf 目录里的 nginx.conf 文件,配置Nginx #user nobody; #指定

windows下配置nginx+php环境

windows下配置nginx+php环境 刚看到nginx这个词,我很好奇它的读法(engine x),我的直译是“引擎x”,一般引“擎代”表了性能,而“x”大多出现是表示“xtras(额外的效果)”,那么整个词的意思就是类似“极致效果”,“额外性能”.当然这里不是要来唠嗑,以上是题外话. nginx相较于我们熟悉的apache.IIS的优势,就我浅入浅出的了解,在于“反向代理”和“负载均衡”.因此考虑到能够为Web服务器节省资源,它可以代替apache来提供Web服务.那么上正题了,ngin