Articles of 反向代理

IIS将子目录redirect到外部URL

嗨,原谅我的无知,我是一个谦虚的客户端开发人员… 我是一个由静态HTML和JS组成的web应用程序。 但是我想通过AJAX调用外部服务,这会在浏览器上导致CORS或跨域策略的一些问题。 所以我需要向MY服务器http://dev.webapp.com/service发送请求 所以我想将服务器上的/服务redirect到http://externaldata.com/service 并返回结果。 Mac的男孩们用Apache代码通过了Apache的授权: ProxyPass /service http://externaldata.com/service 任何人都可以帮助如何在IIS中做到这一点? 我find了关于ARR和反向代理的文章,这些文章是异形的,看起来太复杂了。 作为一个谦虚的webdev我可以做到这一点使用IIS GUI?

Nginxconfiguration作为DMZ上的POP3 / SMTP反向代理

可能重复: nginx作为smtp代理 我在这里要求帮助你如何configurationNginx作为POP3 / SMTP服务的反向代理。 我们有一个Zimbra服务器,提供networking邮件,POP / SMTP,日历等服务。局域网内的Zimbra服务器一切正常。 之后,我在DMZ上configuration了一个Apache2作为反向代理,通过HTTP将WebMail提供给外部客户端。 它redirect到局域网上的Zimbra服务器。 一切正常。 我现在面临的问题是如何通过反向代理向外部客户端提供POP3 / SMTP / POP3SSL / SMTPSSL / TLS服务。 Apache2不提供这种function,Nginx社区不提供任何types的教程,维基或文档,我可以find解决scheme。 我将非常感激有人可以寄给我一些文件或小费。 先谢谢你。

Nginx:我可以在一个不同的URL上caching一个匹配模式的URL吗?

我有一个网站,其中一些url看起来像这样: /prefix/ID ,其中/prefix是静态的, ID是唯一的。 使用Nginx作为反向代理,我想只在/ID部分caching这些页面,省略前缀。 我可以configurationNginx,以便原始URL的请求被caching在缩短的URL? 我试过这个(我省略了一些不相关的部分),但显然这不是正确的解决scheme: http { map $request_uri $page_id { default $request_uri; ~^/prefix/(?<id>.+)$ $id; } location / { proxy_cache_key $page_id } }

Apache 2.4代理服务器获取客户端身份validation,但不传递给Tomcat

我以前已经有Apache 2.2.17作为反向代理运行,它将请求客户端authentication(使用SSLVerifyClient),并将authentication传递给jetty / tomcat应用程序servlet引擎。 然后我的Java应用程序会从请求中读取这个信息(x509Certificate)。 当升级到新服务器时,我们决定迁移到最新版本的Apache,但这个过程似乎不再起作用。 Apache仍然要求客户端身份validation,但似乎没有传递给Tomcat。 以下是工作(v2.2.17)httpd.conf文件的相关位: <VirtualHost _default_:443> ServerName xxxxxxxx SSLEngine On SSLCertificateFile conf/ssl-prod/xxxxxxxx.crt SSLCertificateKeyFile conf/ssl-prod/xxxxxxxx.key SSLCACertificatePath conf/ssl.certs/ <Location /> ProxyPass http://xxxxxxxx:8009/ ProxyPassReverse http://xxxxxxxx:8009/ Order deny,allow Allow from all </Location> <Location /login/> SSLVerifyClient optional SSLVerifyDepth 10 ProxyPass http://xxxxxxxx:8009/ ProxyPassReverse http://xxxxxxxx:8009/ Order deny,allow Allow from all </Location> </VirtualHost> 所以,这只是一个标准的SSL代理,直到用户转到“login”文件夹中的一个页面,此时apache要求客户端进行身份validation。 我已经尝试设置一些其他variables,看看是否会导致它ProxyAddHeaders ProxyPreserverHost上(和closures),但没有成功的工作。 我们在移植到2.2.23分支的最新版本时也遇到了同样的问题,但是当我们复制旧版本的时候,我们正在使用新的服务器。 唯一的区别是我们正在从32位服务器转移到64位服务器(都使用ApacheLounge可执行文件的Windows)。 有任何想法吗?

Nginx,wordpress:无法正确的反向代理caching,由于Set-Cookie。 推荐一个好的策略

我正在尝试为WordPress的博客做反向代理caching,我碰到了一些麻烦。 初始configuration是这样一个简单的反向caching location / { proxy_cache_key "$scheme://$host$request_uri"; proxy_cache staticfilecache; proxy_pass http://wordpressapache; add_header Cache-Control public; proxy_cache_valid 200 302 10d; 我很快意识到,login的用户将被发送与折腾,所以我做了 proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Accept-Encoding ""; location / { # If logged in, don't cache. if ($http_cookie ~* "comment_author_|wordpress_(?!test_cookie)|wp-postpass_" ) { set $do_not_cache 1; } proxy_cache_key "$scheme://$host$request_uri $do_not_cache"; proxy_cache staticfilecache; […]

ProxyPass上的httpd中断编码

我们正在将多字节字符数据的内容发送给proxypass,当它到达我们的数据库时,将字符转换为%uFFFD。 我如何防止httpd从这样的编码搞乱?

如何在代理会话中维护伪装的URL?

我有我的网站的支持页面(www.company.com/support)redirect到第三方托pipe的网站(company.custhelp.com)的代理通过规则…但网站链接本身都在单独的域。 有没有办法维护代理会话,以便会话中点击的链接也通过代理,并保持我希望用户看到的“正确的”url?

IIS反向代理出站规则redirect到外部服务器

我正在通过build立IIS作为反向代理的方式工作。 我已经build立了两个内部网站(由IIS服务),称为Payroll和Webmail,一个外部网站(由不同的Web服务器提供服务)称为IPS。 所有这三个站点都在本地主机上,但Payroll绑定到端口12084,Webmail到端口12085和IPS到端口2080我创build了三个入站规则,它们指向xyz.com/ips/,xyz.com/payroll/和xyz。 com / webmail /到他们各自的服务器。 所有这一切工作得很好。 <rules> <rule name="Reverse Proxy to ips" enabled="true" stopProcessing="true"> <match url="^ips/(.*)" /> <action type="Rewrite" url="http://localhost:2080/{R:1}" /> <serverVariables> <set name="HTTP_ACCEPT_ENCODING" value="" /> </serverVariables> </rule> <rule name="Reverse Proxy to webmail" stopProcessing="true"> <match url="^webmail/(.*)" /> <action type="Rewrite" url="http://localhost:12084/{R:1}" /> <serverVariables> <set name="HTTP_ACCEPT_ENCODING" value="" /> </serverVariables> </rule> <rule name="Reverse Proxy to payroll" […]

varnish3.0.2重写url的howto

我有很多目录有相同的图像“_a.png”,如下所示: /data/images/{a,b,c,d} 因为这个,清漆caching多个副本。 现在我想重写一个url,像这样: if (req.url ~ "/_pty.png$") { set req.url="/images/a/_pty.png"; } 所以我重装清漆,但它不正确的工作! 例如。 我得到的url, http ://xx.com/images/c/_pty.png varnishlog我觉得这是不对的,代码上面没有任何效果! 如何设置?

带有Windows Auth的IIS反向代理引发间歇性502错误

我在IIS上build立了一个网站(www.mysite.com)来提供SSL和Windows身份validation,并将所有HTTPS请求转发到另一台服务器(BIOS名称:internalserver;端口2080)。 指定此设置的规则显示如下: <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <outboundRules> <preConditions> <preCondition name="ResponseIsHtml1"> <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" /> </preCondition> </preConditions> </outboundRules> <rules> <rule name="ReverseProxyInboundRule1" stopProcessing="true"> <match url="(.*)" /> <action type="Rewrite" url="http://InternalServer:2080/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration> 这导致了以下行为(可在IExplorer和Firefox中重现): 单击www.mysite.com导致错误502“Web服务器收到无效的响应,同时充当网关或代理服务器” 重新加载页面会导致网站加载 – 但未格式化,表明未findCSS文件。 第二次重新加载页面会导致网站正确加载,包括CSS指定的格式。 每当浏览器closures并重新启动时,错误502就会重新出现。 另一方面,如果我使用基本身份validation而不是Windows身份validation,反向代理工作得很好,没有上述问题出现。 我的问题是: 在这种types的configuration已知的错误502的出现? 这是否代表IIS中的错误? 如果没有,是否与已知产生此问题的其他软件有任何交互?