海运的博客

Nginx配置透明代理缓存服务器

发布时间:April 22, 2012 // 分类:Nginx // 5 Comments

之前有介绍过Squid构建透明代理缓存服务器Nginx就比较全能了,做为透明代理也不错。
修改Nginx配置文件,在http段添加:

proxy_cache_path /path/proxy_cache levels=1:2 keys_zone=cache_one:30m inactive=10d max_size=10g;
#定义缓存名称cache_one,2级目录,内存缓存30M,硬盘10G,10未访问内容删除
proxy_temp_path /path/proxy_tmp;

server段配置:

server {
    listen 3128;
    resolver 8.8.8.8;
    proxy_cache cache_one;
    proxy_max_temp_file_size 10m;
 
    location / {
        proxy_pass http://$host$request_uri;
        proxy_connect_timeout   60;
        proxy_send_timeout     60;
        proxy_read_timeout     60;
    }
        
         location ~ .*\.(php|jsp|cgi|asp)?$ {
                 proxy_pass http://$host$request_uri;
               }
}

Iptables配置:

iptables -t nat -A PREROUTING -i br-lan -p tcp  --dport 80 -j REDIRECT --to-ports 3128

标签:nginx, linux, 透明代理, nginx配置透明代理

有 5 条 关于" Nginx配置透明代理缓存服务器 "的评论

  1. 随卍星

    你好想请教一下NGINX的缓存怎么搞。我试了没搞通。能否加QQ:357160108帮一下我呢?谢谢

    1. 海运

      新建缓存目录,赋予nginx用户写入读取权限,按此教程添加到配置文件即可,有问题可联系我QQ,谢谢。

  2. wbq

    您好,想用Nginx做个透明代理,客户端机器配置下网关(即Nginx那台机器),客户端dns配置223.5.5.5,请问Nginx如何配置可以实现http/https透明代理,谢谢!

  3. wbq

    你的这个配置需要浏览器设置代理ip+port, 现在假设不设置,只配置客户端网关为Nginx那台机器即可。如何实现呢? 即透明代理而非正向代理。谢谢

  4. wbq

    可以了 只是https透明代理如何做呢?

发表评论

分类
最新文章
最近回复
  • spartan2: https://dashboard.hcaptcha.com/welcome_accessib...
  • 海运: 应该能,在购买页面先手工跳过cf机器验证,后续一定时间内不更换ip应该不会再次验证。
  • spartan: 大佬斯巴达开启了CF的机器识别验证,请问插件能自动跳过吗? 另外这个脚本有没有简单使用说明,新...
  • vincent: 膜拜大佬
  • 海运: proxy-header或proxy_protocol
  • liangjw: 如果是 内部调用 或者 中间存在 代理 而上一个代理又在内网 ,那怎么处理来自代理私有IP?
  • chainofhonor: 感谢,用dnsmasq设置自动判断BIOS和UEFI成功了
  • 海运: 不好意思,这个是很多年前的,现在也许已经不适用,我现在也不用多线了。
  • CQ: -m state --state NEW 替换成-m conntrack --ctstate NEW
  • CQ: 你好,我入站已经成功分流,但是不知道出站怎么设置,PREROUTING替换成POSTROUTI...