在我的haproxyconfiguration我设置了一个大小为5的存储每个进入的IP地址(1分钟)的粘贴表,它被设置为nopurge所以新的条目将不会被存储在表中。 我想要发生的事情是他们会被拒绝,但是这并没有发生。 棒桌线是: stick-table type ip size 5 expire 1m nopurge store gpc0 整个configuration是: global maxconn 30000 ulimit-n 65536 log 127.0.0.1 local0 log 127.0.0.1 local1 debug stats socket /var/run/haproxy.stat mode 600 level operator defaults mode http timeout connect 5000ms timeout client 50000ms timeout server 50000ms backend fragile_backend tcp-request content track-sc2 src stick-table type ip size […]
我在一个embedded式平台(OpenWRT)上使用nginx作为IP摄像头前面的反向代理,我遇到了一个问题,即摄像头比nginx能够更快地将数据推送到nginx。下一阶段。 随着反向代理删除,额外的框架只是被丢弃,就是这样。 但nginx似乎缓冲了大量的相机数据(多达10-15秒的价值),这本身就performance为对观众的极度迟钝。 那么,首先,是否有显而易见的事情可以增加逆向代理的吞吐量? 我没有使用HTMLparsing或翻译,只是过滤几个目录到其他地方,代理其余的相机。 像包检查一样的其他代理function需要显式禁用? 其次,如何大幅度减less或消除nginx积累这个大缓冲区的意愿? 我宁愿看到丢包时超载,而不是把它们存储起来。 谢谢。
对于我正在开发的网站,我所有的静态内容都是在S3 / Cloudfront的组合外托pipe的。 我一直在寻找很多关于将Django应用程序部署到生产环境的教程,其中很多人都推荐使用Nginx(反向代理)+ Apache。 这是在Ngnix将被用于提供静态内容的假设下陈述的,而Apache将完成所有繁重的工作。 当没有任何静态内容可用时,是否有任何其他原因需要使用反向代理? 或者在这种情况下,我可以简化我的服务器设置,只使用Apache?
作为一个学习练习,以便更多地了解反向代理。 我决定使用我的私有云服务器作为反向代理服务器,并尝试绕过企业防火墙(当我在工作时)让我自己访问Gmail。 我想出了下面的代理configuration(请不要介意方括号): SSLProxyEngine on ProxyRequestclosures ProxyViaclosures [代理 *] 命令否认,允许 全部否认 允许来自xxx.xxx.xxx [/代理] ProxyPreserveHost打开 ProxyPass / qqq https://www.google.com/accounts/ServiceLogin?service=mail ProxyPassReverse / qqq https://www.google.com/accounts/ServiceLogin?service=mail ProxyPass / qqqqq http://mail.google.com/mail ProxyPassReverse / qqqqq http://mail.google.com/mail 上述configuration的结果如下: 当我导航到myserver.com/qqq时,后端服务器(Google)只是更改URL并将我redirect到google.com。 虽然我有“ProxyPreserveHost在” 当我导航到myserver.com/qqqqq时,Google会301回到我的代理服务器,它再次将我redirect到Google,最后在循环中结束。 我在这里阅读了一些post在stackoverflow,但不能从他们提取任何有用的信息: https://stackoverflow.com/questions/5277107/apache-reverse-proxy-changes-url https://stackoverflow.com/questions/6385638/proxy-pass-follow-redirect-on-server https://stackoverflow.com/questions/1144286/how-to-tell-apache-in-reverse-proxy-mode-to-intercept-or-trap-302-responses-fro 我在这里的问题是: 如何防止Google更改url,而是透明地显示内容 我能做些什么才能在代理服务器和Google之间的301循环中结束 如果您认为我错过了/遗漏/误解了某些东西,请告诉我 谢谢Alex
我们有一个内部服务器,需要基于x509的身份validation,但我已被要求用基本的用户/密码身份validation打开它。 我一直在尝试在apache中设置一个反向代理,它使用可信证书连接到内部服务器,但我似乎无法select和使用证书。 基本身份validation正常工作。 通过所有的问题在这里和Googlesearch一些日子,我敢打赌,我需要使用一些SSLProxy *指令,但我所尝试的都没有成功到目前为止。 顺便说一句,我正在使用自签名证书在内部服务器进行身份validation。 到目前为止,我的.conf文件是这样读取的 <VirtualHost *:80> ServerName external.server SSLProxyEngine on UnknownSSLDirectives ProxyRequests Off ProxyPass / https://internal.server/ ProxypassReverse https://internal.server/ / <Location /> AuthType Basic AuthName "Authenticated proxy" AuthUserFile /etc/httpd/passwd/passwords Require user USER </Location> <Proxy> Order Deny,Allow Allow from all </Proxy> RequestHeader unset Authorization ErrorLog "logs/proxy.error.log" CustomLog "logs/proxy.access.log" common </VirtualHost> 我似乎如此亲密,但却无法渗透SSLauthentication的内在因素。我希望有人能够启发我。
我计划大规模部署一个Glassfish驱动的Web应用程序: 运行多个Glassfish 3.1.1实例的节点正在运行该Web应用程序。 Web应用程序由一个GoogleWebToolkit前端和一个REST网关组成。 这些实例被组合在一个Apache 2.2反向代理/负载均衡器之后。 所有客户端通信(移动应用程序,浏览器和其他Web应用程序)都通过HTTPS,SSL在Apache负载均衡器处终止。 在性能和可用性方面,与Apache相比,Apache和Glassfish之间运行mod-jk / AJP13的通信有什么好处?
我正在运行一个nginx实例,它充当EC2虚拟服务器上的SSL端点和基本负载平衡器,并且看到来自上游源的SSL页面的性能很差。 EC2实例是一个c1.medium,应该能够维持合理的吞吐量,但是我不能每秒超过60个事务。 服务于nginx状态页直接离开服务器,我pipe理的吞吐量是十倍以上,所以它不是纯粹的SSL开销,但是如果我重新configuration它服务相同的内容没有SSL我也做的更好,所以它也不是上游高架。 当CPU每秒处理60个事务时,CPU 已经最大化了。 我正在使用ab来testing它,参数为“-n 1000 -c 50 -k” – 1000个命中,并发度为50,启用了keepalives,以便SSL会话caching应该可以工作。 这是一个简短的configuration: user www-data; worker_processes 4; pid /var/run/nginx.pid; events { worker_connections 4096; } http { sendfile off; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/json; log_format standard '$remote_addr – $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"'; access_log /var/log/nginx/access.log standard; error_log […]
我正在尝试使用Apache代理作为运行在我的基础架构中不同服务器上的服务的前端。 我们称之为proxy.example.com和service.example.com。 Proxy.example.com正在侦听端口80,但service.example.com正在侦听端口8888.service.example.com在连接到端口时所做的第一件事情是发送一个302redirect,其中包含端口8888它 – 和Apache是正确重新映射的域名,而不是redirect端口。 service.example.com上的服务是第三方打包的产品,所以让我们假设我们不能以任何方式改变它的工作方式。 Apacheconfiguration的相关位看起来像这样: ProxyPreserveHost On ProxyPass / http://service.example.com:8888/ ProxyPassReverse / http://service.example.com:8888/ 这里是一些(轻微匿名)telnet到端口80.首先,直接到service.example.com: $ telnet service.example.com 8888 Trying xxx.xxx.xxx.xxx… Connected to service.example.com. Escape character is '^]'. GET / HTTP/1.0 Host: service.example.com HTTP/1.0 302 Found Date: Thu, 19 Jan 2012 10:38:54 GMT Content-Type: text/html Location: http://service.example.com:8888/directory/index.html Connection closed by foreign host. 并通过proxy.example.com: $ […]
对我正在考虑的反向代理设置有一个怀疑的问题。 我目前在DMZ中有一对负载均衡的应用程序服务器(下图中的S1,S2)。 这些接受来自外部客户的入站请求。 他们还连接到内部networking资源(例如数据库服务器,消息代理) DMZ设置非常标准:两个防火墙 – 内部和外部的。 外部防火墙只允许外部请求特定端口上的特定服务器资源。 面向内部的防火墙只允许DMZ服务器打开到内部networking资源的指定连接(例如数据库服务器,消息代理) 现在,我有一个架构提案说明这个设置是不安全的。 该提案要求将两台DMZ服务器移入内部networking。 在DMZ中,它们将被“反向代理”服务器(下图中的“RP”)替代。 “RP”将接受入站请求并将其代入S1 / S2。 这里的关键卖点是内部服务器启动到DMZ中“反向代理”服务器的networking连接。 所以这: [EXTERNAL] [DMZ] [INTERNAL] Client –> || S1/S2 || –> DB,MQ 正在被这个取代: [EXTERNAL] [DMZ] [INTERNAL] Client –> || RP || <– S1/S2 –> DB,MQ RP本质上是S1 / S2(相同技术堆栈)的精简版本。 它通过由S1 / S2发起的持续连接向S1 / S2传送外部请求。 我的问题:鉴于RP的技术堆栈与S1 / S2相同(技术相同,代码较less),新设置如何提供显着的额外保护? 应用程序攻击不会受到S1 / S2的干扰吗? 具体来说,如果你妥协的RP,你也可以妥协S1 […]
我使用nginx作为反向代理,但试图找出多大,我应该在'proxy_cache_path'指令设置'keys_zone'属性。 关于确定我find的尺寸的唯一build议是http://www.ruby-forum.com/topic/2053000 然而,这听起来不正确,因为“max_size /(平均文件大小)”似乎过度杀伤。 不是keys_zone只是磁盘上的caching文件的元数据? 因此,给定条目的大小应该是非常小的。 有没有办法在区域内进入“获取”,这样我就可以看到给定的入口有多less空间了?