我有在Ubuntu上运行的鱿鱼代理服务器。 我为acl写了一套规则,包括: acl exceeded_users proxy_auth "/etc/squid/users/exceeded" http_access deny exceeded_users all_dst 如果任何用户超过带宽限制,那么他的名字将转移到超出列表。 但问题是应用这个改变,我需要重新启动鱿鱼。 有没有办法像这些更改自动应用而不重新启动鱿鱼。 提前致谢
我如何得到关于Squid请求/响应的报告,类似于Apache服务器状态?
我一直在争取一段时间,但我似乎无法理解为什么一个请求没有被caching。 响应标题: HTTP/1.1 200 OK Date: Tue, 20 Aug 2013 16:42:12 GMT Server: Apache/2.2.23 (Unix) mod_ssl/2.2.23 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_perl/2.0.6 Perl/v5.8.8 Expires: Tue, 20 Aug 2013 22:32:41 GMT Pragma: public Cache-Control: max-age=21029, public, must-revalidate, proxy-revalidate X-Powered-By: W3 Total Cache/0.9.3 Vary: Last-Modified: Tue, 20 Aug 2013 16:32:41 GMT Content-Type: text/html; charset=UTF-8 X-Cache: MISS from proxy […]
有没有办法阻止Skype使用Squid?
有没有人有Squid3工作,以成功cachingFTP请求透明? 代理是否应该在3128上进行监听,并且将21个传入的请求redirect到3128?
我们刚刚设置了squid作为我们的代理,而且我打算使用Sarg来分析日志文件。 我最初设置了鱿鱼日志每天旋转,所以他们不会变得巨大。 问题是我不能在squidconfiguration中看到一个选项来读取一个文件夹完整的鱿鱼日志文件(如* .log)。 有没有一个简单的方法来做到这一点,或者我将不得不写一个bash脚本或东西来处理它们之前,我得到鱿鱼阅读它? 干杯卢克
我使用squid透明代理进行caching,而且我还使用与squid在同一台机器上运行的url_rewrite和apache脚本完成了youtubecaching。 这一切工作正常,直到我决定与TPROXY,因为它有很多好处。 当我在iptables中实现tproxy规则时,除了播放youtubevideo(url_rewriter和apache脚本进入其中)之外,一切都可以继续工作。 url_rewriter将youtube请求redirect到一个在Apache上工作的本地.php脚本(在同一台机器上) 我认为这跟squid与本地apache进程(用于youtubecaching的软件的工作方式)之间的通信有关系,tproxy也搞砸了这个,因为在执行tproxy之后,Apache的请求被发送到USER- IP(以前没有tproxy,它是用SQUID-IP),并且来自apache脚本的回复可能直接通过用户,而不是通过squid进程返回。 此外,Apache脚本应该能够与真正的YouTube服务器自由沟通,从那里获取video。 这是我的tproxy的规则,但我认为他们是非常标准的: iptables -t mangle -N DIVERT iptables -t mangle -A DIVERT -j MARK –set-mark 1 iptables -t mangle -A DIVERT -j ACCEPT iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT iptables -t mangle -A PREROUTING -i eth1 -p tcp –dport 80 -j TPROXY –tproxy-mark 0x1/0x1 […]
我想使用一个拦截鱿鱼服务器caching用户在我的networking频繁下载特定的大型zip文件。 我已经在网关机器上configuration了squid,并且caching正在为我们networking之外的Apache Web服务器提供的“静态”zip文件工作。 我想通过鱿鱼caching的文件是从Heroku托pipe的Rails应用程序提供的> 100MB的zip文件。 我设置了ETag头(服务器上的zip文件的SHA哈希)和Cache-Control: public头。 但是,这些文件不是由squidcaching的。 例如,这是一个没有被caching的请求: $ curl –no-keepalive -v -o test.zip –header "X-Access-Key: 20767ed397afdea90601fda4513ceb042fe6ab4e51578da63d3bc9b024ed538a" –header "X-Customer: 5" "http://MY_APP.herokuapp.com/api/device/v1/media/download?version=latest" * Adding handle: conn: 0x7ffd4a804400 * Adding handle: send: 0 * Adding handle: recv: 0 … > GET /api/device/v1/media/download?version=latest HTTP/1.1 > User-Agent: curl/7.30.0 > Host: MY_APP.herokuapp.com > Accept: */* > X-Access-Key: 20767ed397afdea90601fda4513ceb042fe6ab4e51578da63d3bc9b024ed538a > […]
好吧,所以我即将把我的盒子(2k外部ips)升级到最新的鱿鱼(3.3.x),因为我的旧版本没有任何多核处理器的优势。 在对工作人员进行研究时,我发现有人说: 在squid.conf中使用cpu_affinity_map。 离开Cpu0“的OS”。 注意不要将两个繁忙的工作人员放在兄弟的超级核心上。 这只是一个优化algorithm的草图。 有很多细节取决于你的设置。 我也明白,最好使用像CPU一样多的工人: FWIW,我们通常在使用cpu_affinity_map和worker和cores之间的1:1映射时,可以看到最好的性能结果(就squid工作者而言,这样可以有效地禁用这些复杂的algorithm)。 我的问题是…这是物理CPU? 当我运行cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l时,我的盒子报告了8个cpus,但只显示了2个物理显示 cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l这意味着2名工人? 如果我把2个工人放在2个物理CPU上, 离开Cpu0“为操作系统”怎么样? 这意味着我只为cpu1设置了1个worker,而OS使用cpu0? PS我知道cpu的亲和力。 我只需要澄清一下,在我失去性能之前,如何确切地找出我可以使用多less工人。
我使用鱿鱼作为反向代理在一个互联网IP上托pipe多个Web服务器。 它工作正常,并在过去几个月一直这样做。 我刚刚注意到,发送到我的服务器的每个请求被logging为来自鱿鱼服务器的IP地址。 无论如何,使鱿鱼通过发送IP到Web服务器?