Articles of 反向代理

Apache反向代理将不同的源IP范围转发到不同的目标URL

这可能是一个存在的问题(或在网上的某个地方),但我找不到它。 我们希望将我们的用户基础从后端服务器的一个实现缓慢迁移到不同服务器上的新实现。 在后端服务器前面已经有了一个Apache2反向代理。 因此,我们想要将一些源IP范围/子网代理到新的服务器,而将所有其他服务器redirect到原始服务器。 然后添加到代理新服务器的IP范围,直到他们都做。 然后删除旧的服务器。 有人能给我一些指示,这是如何在Apache中完成?

后缀 – 如何在2分钟内发送最多5封电子邮件

我尝试通过anvil命令设置Postfix,以便可以在2分钟内最多发送5封电子邮件,看起来这是不可能的,因为可以发送电子邮件没有任何限制。 也许我还没有find关于选项smtpd和铁砧或类似的master.cf文件的正确设置。 许多问候 main.cf: anvil_rate_time_unit = 120s smtpd_client_connection_count_limit = 1 smtpd_client_connection_rate_limit = 1 smtpd_client_recipient_rate_limit = 5 smtpd_client_message_rate_limit = 5 master.cf: # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ========================================================================== smtp inet n – – – – smtpd #smtp inet n – – – 1 postscreen […]

使用nginx作为caching代理,不需要客户端的条件获取

我想Nginx被设置为一个反向代理caching在另一个Web服务器(原始服务器)之前。 我知道如何做到这一点。 但是,如果我不想依靠Web浏览器发送HTTP条件获取来利用caching呢? 相反,我想Nginx做一个HTTP条件获取到原始服务器。 如果Nginx具有陈旧的内容,它将使用来自原始服务器的新副本更新其caching。 stream程将如下所示: 浏览器(或其他非浏览器客户端)向Nginx发送HTTP GET请求。 (没有条件获取标题)。 Nginx发送请求的内容到源服务器的HTTP GET,包括一个条件获取头(例如“If-Modified-Since”)。 如果内容已被修改,原始服务器将响应HTTP 200以及Nginx用来更新其caching的内容。 否则,它会响应HTTP 304“未修改”,Nginx不更新其caching。 Nginx响应HTTP 200和请求的内容给浏览器。 原理是减less来自浏览器的不使用条件获取的HTTP请求的源服务器上的负载。

Nginx作为tomcat子目录的代理

我想为我的域名如Tomcat服务器设置一个Nginx代理服务器 example.com/demo/sample example.com/demo/manager example.com/demo/other_apps … 这是我的Nginx server blockconfiguration server { listen 80; server_name example.com; location /demo/ { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_pass http://IP_ADD_TOMCAT_SERVER:8080/; } location ~ /\.ht { deny all; } ## Only allow these request methods ## if ($request_method !~ ^(GET|HEAD|POST)$ ) { return 444; } […]

http jetty上的https反向代理

我在http上有一个docker应用程序。 我的虚拟主机在https上运行一个反向代理,它代理我的docker应用程序(http)。 浏览第一页( https://example.com/index.html )的作品,但是当我点击一个链接,它回落到http。 ( http://example.com/link.html ,而不是https://example.com/link.html ) 如何解决这个问题? 是apache上的configuration问题(应该重写url),还是在jetty中configuration(我应该在jetty中configuration“canonical url”)? 其实我不能改变在Apache的configuration(因为只有我的虚拟主机提供商有权访问它),所以我希望这个问题可以在docker上解决。 怎么做? 注意:我的docker需要在http(而不是https)上运行,正如我的虚拟主机提供商所定义的。

更大的文件的IIS ARR /反向代理502错误

我有一个用Python编写的API,通过ISAPI扩展PyISAPIe访问IIS 7.5。 我认为从我们的主站点分离这个API是明智的,所以它在不同的站点通过8008端口访问。 为了能够使用像http://domain/api这样的URL访问API,我已经在IIS中使用ARR和URL Rewrite创build了一个反向代理规则,以便http://domain/api被redirect到http://domain:8008 。 反向代理似乎工作正常,我在大多数情况下从API接收正确的响应(API返回JSON)。 但是,在某些情况下,我收到502错误,并显示以下消息: 502 – Web server received an invalid response while acting as a gateway or proxy server. 这似乎只发生在JSON响应超过一定的大小(在我的testing中大约125KB) – 对于较小的尺寸,一切似乎正常工作。 我已经尝试在代理设置中增加Response buffer threshold ,不起作用。 添加信息 在日志中,我可以看到8008端口上的站点请求成功并返回200状态码。 激活失败的请求追踪之后,唯一的错误/警告如下(这是在收到来自其他站点的响应之后 – 请参阅前一点): MODULE_SET_RESPONSE_ERROR_STATUS Warning ModuleName="ApplicationRequestRouting", Notification="EXECUTE_REQUEST_HANDLER", HttpStatus="502", HttpReason="Bad Gateway", HttpSubStatus="3", ErrorCode="2147954552"ConfigExceptionInfo=""

带有SSL的websockets的nginx反向代理

我想在我的osx开发机器上configurationnginx(通过macports安装)。 我试图将代理本地主机:12346 /交易到一个websocket连接,可以在远程机器上的/ trade在端口12346上使用。 我正在使用下面的nginx.conf文件。 它在SSL SECTION被注释掉的时候有效,但是nginx在未注释的时候不能正常启动。 我已经在其他问题和答案这里,从其他网站build模conf文件。 我已经尝试了20种不同的方式,但只要取消注释任何SSL相关的行,nginx就不会启动。 worker_processes 1; events { worker_connections 20; } error_log /opt/local/etc/nginx/debug.log debug; http { include mime.types; default_type application/octet-stream; # # Some default configuration. # sendfile on; tcp_nopush on; keepalive_timeout 65; # # A list with load balancing backends hashed on IP for sticky load balancing. # upstream backend […]

鱿鱼负载平衡和反向代理冲突

我很难configurationSquid 3.3在多个WAN链路(使用随机ACL + tcp_outgoing_address选项)上执行“负载平衡”,并且还有一个“反向代理”。 当我configuration一个(负载平衡)或另一个(反向代理)时它工作得很好,但是当两者configuration时,反向代理不再正常工作。 数据包捕获显示通常在LAN接口上发送的反向代理stream量,现在正在WAN接口上输出(因此不会到达LAN上的内部主机)。 很明显,“ tcp_outgoing_address ”设置也被应用于反向代理stream量,而不仅仅是正向代理stream量。 以下是我使用的负载平衡configuration: acl fiftyPercent random 0.5 tcp_outgoing_address <<WAN1-IP-HERE>> fiftyPercent tcp_outgoing_address <<WAN2-IP-HERE>> 请参阅 – http://wiki.squid-cache.org/Features/AclRandom 我对鱿鱼知之甚less,而对无数post的search却一无所获。 有谁知道我怎么可以应用负载平衡只适用于转发代理stream量,仍然有反向代理stream量工作,如果它没有设置?

反向代理PHP:最佳实践?

我将NGINX设置为一个SSL反向代理,用于三个带有dynamic(PHP)和静态内容的小型Web应用程序。 当涉及到传递PHP请求时,什么会被认为是安全性和性能方面的最佳实践? 是否应该将它们传递到所请求的Web服务器(NGINX – 然后通过同一主机上的套接字或TCP传递给PHP-FPM)还是直接传递给PHP-FPM服务器? 我所有的Web应用程序和反向代理都在FreeBSD上分开的Jails中。 每个监狱都有自己的NGINXnetworking服务器和PHP-FPM(或uWSGI和Python)。

适用于使用非标准端口的Web服务器的loggingtypes?

我需要设置一些服务器,这些服务器必须在5000以上的端口上运行。(由于内部策略,这是来自客户端的这项工作的请求,我无能为力)。 关于我的是,除了别的以外,我必须build立一个web服务器来运行在不同于80的端口上,但是这个站点仍然能够接收像example.com/contact和example.com/register这样的请求。 由于它不能在80端口上运行,所以我将无法使用Alogging。 所以……做这个工作甚至有可能吗? 我可以configurationApache使用5080,或任何他们想要的,但那又如何? 局域网以外的人如何通过地址example.com/whatever访问它?