nginx代理加速初步研究

一、前言
    最近项目需要使用代理技术进行访问加速和url重写,经过多方比较选择了俄罗斯人的nginx,据说并发处理很好,是个比较牛x的代理服务器。
二、问题
    首先介绍环境,客户机处于局域网内,不允许外网,服务器是双网卡即可上外网由与客户机连通。如图:
nginx代理加速初步研究


服务器192.168.1.1上的tomcat下部署了一个网站,网站中某些页面引用了外网的资源,比如test.html中有如下代码:
<html>
<head>
</head>
<body>
</body>
</html>
在服务器上直接访问http://localhost:8080/test.html会看到百度的logo,但是由于客户机不允许上外网,通过客户机访问http://192.168.1.1:8080/test.html的时候,图片会显示不出来。
三、方案
    为了解决这一问题考虑使用nginx的rewrite功能,将上面的页面代码改写为:
<html>
<head>
</head>
<body>
<image src="img/baidu_sylogo1.gif"/>
</body>
</html>
在nginx中配置.gif结尾的请求重写url到百度的域名之下,这样客户机发起内网请求的图片,由nginx取回一个外网的图片返回过去,可以解决客户机不能访问外网的问题。
四、nginx安装
    访问 http://nginx.org/ 可以获得最新版本,我使用的是下面这个链接
nginx-0.9.7 development version has been released.
使用了windows的版本,下载后解压即可使用,结构如图
nginx代理加速初步研究
nginx.exe就是启动文件了,logs是日志目录如果启动发生异常可以去看,html是web服务的根目录,可以直接用nginx作为web服务器,把html文件放进去就行。conf是配置文件目录,也是最关键的一个目录。
五、nginx配置
打开nginx.conf,修改或增加内容,首先增加转发到tomcat的配置
upstream tomcat_server{  
server 127.0.0.1:8080;    
}  
然后进行转发,修改location /的配置,增加一行proxy_pass http://tomcat_server;
location / {
            root   html;
            index   index.html index.htm;
#所有根目录请求都转向到
proxy_pass http://tomcat_server;
}
增加url重写规则,可利用正则表达式将所有对于图片、样式表、js的请求都转到外网,也可以指定转发
location ~* ^.+\.(jpg|jpeg|gif|png|swf|rar|zip|css|js)$ { 
rewrite ^/images/(.*) http://www.baidu.com/img/$1 last; 
}
六、nginx启动、查看、停止
cmd命令模式下执行  
启动
D:\>cd nginx-0.9.7
D:\nginx-0.9.7>start nginx.exe
查看
D:\nginx-0.9.7>tasklist /fi "imagename eq nginx.exe"
映像名称                       PID 会话名               会话#       内存使用
========================= ======== ================ =========== ============
nginx.exe                     5464 Console                     0       3,816 K
nginx.exe                     4920 Console                     0       4,124 K
停止
D:\nginx-0.9.7>nginx -s stop
具体参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值