Articles of 反向代理

Apache Httpd – 带负载均衡的端点授权

Apache Httpd被用作两个端点服务器之间的负载平衡器。 每个服务器都有自己的HTTPauthentication。 目标是将端点身份validation传递给用户,用户input其凭据,并将身份validation传回到terminal服务器。 当我将Apache设置为反向代理时,身份validation将毫无问题地通过。 当我到本地主机,我得到提示凭据,我input他们,然后网站工作正常。 这是我的反向代理的configuration: <VirtualHost *:80> ProxyPass "/" "http://serv123:27001/" ProxyPassReverse "/" "http://serv123:27001/" <Location "/"> SetEnv proxy-chain-auth On </Location> </VirtualHost> 但是,当我添加负载平衡,似乎proxy-chain-authconfiguration不正确。 当我input凭据时,我立即得到提示,好像他们没有正确input。 <VirtualHost *:80> ProxyPass "/" "balancer://mycluster/" ProxyPassReverse "/" "balancer://mycluster/" <Location "/"> SetEnv proxy-chain-auth On </Location> <Proxy "balancer://mycluster"> BalancerMember "http://serv123:27001/" BalancerMember "http://serv456:27001/" </Proxy> </VirtualHost> 我也尝试过<Location "balancer://mycluster">和<Location "balancer://mycluster/"> ,但没有成功。 有谁知道正确的方式通过负载平衡的Apache Httpd身份validation?

Nginx的反向代理问题为4xx响应代码

我已经configurationnginx来代理到端口8000的请求,路由到不同的IP。 在configuration中,我还添加了Access-control-Allow-Origin头。 如果服务器响应2xx响应代码,这工作正常。 但是,如果服务器响应4xx响应代码,它不包括下面提到的头 server { listen *:8000; ssl on; ssl_certificate /etc/nginx/ssl/axis.crt; ssl_certificate_key /etc/nginx/ssl/axisPrivate.key; server_name website.com; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP; access_log /var/log/nginx/nginx.vhost.access.log; error_log /var/log/nginx/nginx.vhost.error.log; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_pass https://api; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_ssl_session_reuse off; proxy_set_header Host $http_host; proxy_redirect off; proxy_intercept_errors off; # Simple requests if ($request_method ~* […]

我应该如何在Windows上使用SSL设置反向代理?

这里有两个基本问题: 如果我想通过反向代理(P)从3个不同的服务器(A,B,C)提供SSL内容,SSL魔术会发生在哪里? 我猜测,每个服务器将负责处理SSL的东西,X只是路由的位,但我不知道。 据推测,在这种情况下,我会使用在每台机器A,B,C上为X签名的相同证书。或者X本身是否执行所有的SSL? 其次,什么是最好的Web服务器用于Windows Server 2008上的反向代理? IIS,Apache等。如果你有一个很好的例子来设置你的build议,额外的功劳。 谢谢你的帮助!

使用HTTP与应用程序服务器进行Web服务器通信的优点和缺点是什么?

背景:我想将我们的Web服务器/应用程序服务器function分离到不同的机器上(逻辑上或物理上)。 也就是说,我想把一些资源投入到静态内容(静态HTML,图像,Javascript,CSS,video等等)中,并且希望将其他资源用于生成dynamicHTML(我的web应用程序恰好是ColdFusion应用程序,你可能会认为是任何J2EE应用程序)。 我熟悉几种J2EE供应商将其应用程序服务器与Web服务器连接的方法。 例如,Adobe提供了mod_jrun,Tomcat提供了mod_ajp,mod_proxy_ajp,&mod_jk,Caucho(Resin)提供了mod_caucho等等。这些连接器中的几个允许负载平衡function。 我想他们正在与可以作为集群控制器的应用程序服务器的一部分进行通信。 我注意到的一件事是,这些连接器是用于Apache(通常在Windows上的IIS)使用。 我们正在考虑从Apache移到更轻的networking服务器之一,比如Nginx或Cherokee。 如果我这样做,似乎我不会有像上面提到的使用连接器的选项。 这些服务器文档中的一致性build议是只configuration其HTTP反向代理function,以便将它们连接到应用服务器(通过应用服务器的HTTP实现)。 我感兴趣的是您对HTTP和其他协议中使用的协议的性能影响的经验,就像我上面提到的那样。 我认为那些其他连接器的function要低得多,因此性能更高。 他们显然可以带来新的“function”,如上面提到的暴露应用程序服务器的负载平衡function。 所以你怎么看? HTTP和Web应用程序层之间进行通信的简单性和灵活性是否比更多定制连接器的附加function更具吸引力? 在规划这样一个我没有考虑过的多层架构时,是否还有其他问题?

我正在寻找一个良好的TCP和HTTP负载均衡(或反向代理)软件,有什么build议吗?

我正在寻找一个良好的TCP和HTTP负载均衡(或反向代理)软件,有什么build议吗?

IIS上有两个域,两个服务器,一个IP

我已经看到了这个问题的各种Apache版本,但没有IIS的,所以我会问: 我有2个IIS7服务器,2个域名(例如www.fooone.com和www.footwo.com)和1个IP地址。 我希望每个域名都转到不同的IIS服务器,而IIS服务器则提供完全不同的内容。 IIS可以处理这个,还是我需要一个额外的代理?

504在Nginx-Apache-WordPress平台上发布之后的网关超时

我build立了一个WordPress的博客, Nginx作为Apache的反向代理 。 一切都很顺利,但是有一点问题。 当我写一个新的职位,我可以保存草稿,一切正常。 但是, 如果我点击发布button ,服务器会给出“ 504 Gateway time-out ”错误(下面的行是Nginx 0.7.65)。 奇怪的是,如果我访问我的博客,这篇文章确实是公布的 ,没有错误,任何事情都应该如此。 所以我只是回到我的pipe理页面,在那里,这个post被列为已发布,好像504错误是一个小警告。 我认为这个问题与PHP有关 (没有PHP-FPM,只是php5 -btw的正常安装,一切都在Ubuntu 10.04 LTS下),或者可能与我在根目录下的Apache .htaccess文件有关的博客,这是典型的.htaccess: # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress # protect wpconfig.php <files wp-config.php> order […]

Nginx的用户子域名,我应该proxy_pass?

我试图设置用户子域名,提供来自特定文件夹的内容: www.example.com/username从username.example.com (就像github页面)。 我看了Nginx重写,但我不希望浏览器redirect – 我想要的域名是username.example.com。 无论如何,对这个问题的评论说,我不能重写主机,只能代理它。 我尝试设置一个proxy_pass ,但所有的文档和示例显示它被用来(显然)代理到另一个主机或端口上的服务,但在我的情况下,我只想代理到另一个位置在同一个主机和端口。 这是解决这个问题的适当方法吗?如果是的话,那么正确的Nginxconfiguration语法是什么?

非反向代理的技术解释

维基百科“ 在计算机networking中,反向代理是一种代理服务器,代表客户端从一个或多个服务器获取资源,然后将这些资源返回给客户端,就像源自反向代理服务器本身一样。 ]虽然转发代理通常位于客户端应用程序(如Web浏览器)和托pipe所需资源的服务器之间,但反向代理通常位于更靠近服务器的位置,并且只会返回已configuration的集合的资源“。 您如何向非技术人员解释“反向代理”一词? UPDATE 问题背景: 我正在教自己编写自己创build一个数据绑定web应用程序的目标。 自从我开始以来,我发现自己做了更多的与编程无关的任务,这是一个没人真正告诉我的难题。 因此,为了理解构buildweb应用程序的各个组件,我想更好地理解web服务器的angular色以及它们的作用和工作原理。 其中,我遇到了nginx,它提供了一个反向代理服务,因此这个问题。

在同一台机器上多个独立的apache守护进程

我想问一个问题,关于是否可以在同一台机器上运行多个单独的Apache守护程序。 我不提到多个Apache进程。 我知道这是可行的。 我正在谈论完全单独的守护进程。 我熟悉VirtualHosts的概念,知道如何在同一台机器上运行多个网站,但这不是我所需要的。 详细地说,我在一台机器上运行一个Web应用程序。 apacheconfiguration文件将web请求指向相关位置或wsgi应用程序。 不过,我需要在同一台机器上设置一个反向代理。 反向代理的configuration文件将不断更新,条目越来越多。 出于这个原因,我希望有一个单独的Apache守护进程来运行反向代理,以便反向代理的Apacheconfiguration文件上的任何可能的语法错误都不会影响/崩溃Web应用程序。 首先,这是要走的路吗? 还是有另一种方法来隔离2个应用程序(Web应用程序,反向代理),以便它们不会互相影响? 如果是,那怎么可能? 提前致谢。