apachehttpd作为jboss以及其他Apache服务器的负载平衡器
我有一个apachehttpd服务器,比如说server1*(公开),它使用mod_集群作为一些jboss服务器(防火墙后面)的负载平衡器。现在我想在两台apache服务器上安装我的静态内容(images/css/htmls)和一些cg脚本,比如**server2和server3(防火墙后面) 现在,我希望server1充当这些server2和server3以及jboss服务器的负载平衡器 根据这种安排,对部署在jboss上的应用程序的任何请求都需要路由到jboss,任何静态内容请求都应该转到server2或server3 以下是我正在使用的版本 Linux服务器 apachehttpd-2.2.22 JBOSS-EAP-6 我需要在服务器1中使用什么机制/配置才能使之成为可能?apachehttpd作为jboss以及其他Apache服务器的负载平衡器,apache,jboss6.x,Apache,Jboss6.x,我有一个apachehttpd服务器,比如说server1*(公开),它使用mod_集群作为一些jboss服务器(防火墙后面)的负载平衡器。现在我想在两台apache服务器上安装我的静态内容(images/css/htmls)和一些cg脚本,比如**server2和server3(防火墙后面) 现在,我希望server1充当这些server2和server3以及jboss服务器的负载平衡器 根据这种安排,对部署在jboss上的应用程序的任何请求都需要路由到jboss,任何静态内容请求都应该转到s
请看是否有人能帮上忙。好吧,您只需添加一个ProxyPass设置。mod_cluster与ProxyPass兼容,因此您可以同时使用两者 例如,如果我希望由httpd而不是AS7提供gif图像,我可以添加:
ProxyPassMatch ^(/.*\.gif)$ !
此外,如果您设置
CreateBalancers 1
mod_cluster不会为您创建代理,您必须自己创建代理。这为您提供了额外的控制。例如:
ProxyPassMatch ^/static/ !
ProxyPass / balancer://qacluster stickysession=JSESSIONID|jsessionid nofailover=on
ProxyPassReverse / balancer://qacluster
ProxyPreserveHost on
在前面的示例中,我们将/static/content以外的任何内容代理给工人
- 注意:如果遇到任何与cookie相关的问题,您可能需要使用ProxyPassReverseCookieDomain和ProxyPassReverseCookiePath
- 注意我的配置中的qacluster。默认值为mycluster,因此为了命名我的均衡器qacluster,我将其添加到mod_cluster config(VirtualHost外部):
如果不清楚,请回答,我可以尝试进一步详细说明。好的,您只需添加一个ProxyPass设置。mod_cluster与ProxyPass兼容,因此您可以同时使用两者 例如,如果我希望由httpd而不是AS7提供gif图像,我可以添加:
ProxyPassMatch ^(/.*\.gif)$ !
此外,如果您设置
CreateBalancers 1
mod_cluster不会为您创建代理,您必须自己创建代理。这为您提供了额外的控制。例如:
ProxyPassMatch ^/static/ !
ProxyPass / balancer://qacluster stickysession=JSESSIONID|jsessionid nofailover=on
ProxyPassReverse / balancer://qacluster
ProxyPreserveHost on
在前面的示例中,我们将/static/content以外的任何内容代理给工人
- 注意:如果遇到任何与cookie相关的问题,您可能需要使用ProxyPassReverseCookieDomain和ProxyPassReverseCookiePath
- 注意我的配置中的qacluster。默认值为mycluster,因此为了命名我的均衡器qacluster,我将其添加到mod_cluster config(VirtualHost外部):
如果不清楚,请回答,我可以试着进一步阐述。我遇到了同样的问题,在年,我们使用Apache HTTP服务器处理静态内容,使用JBOSS作为7服务器处理动态内容(JSF web应用程序) 因此,在加载模块末尾添加以下属性
CreateBalancers 0
告诉“0:在httpd中定义的所有虚拟主机中创建。”
更多信息,请访问:
下面的配置解决了图像和手写板无法显示的问题
<VirtualHost *:80>
ServerName dev.rama.com
DocumentRoot "/var/www/assests"
UseAlias 1
ProxyPassMatch ^(.*\.bmp)$ !
ProxyPassMatch ^(.*\.css)$ !
ProxyPassMatch ^(.*\.gif)$ !
ProxyPassMatch ^(.*\.jpg)$ !
ProxyPassMatch ^(.*\.js)$ !
ProxyPassMatch ^(.*\.png)$ !
<Directory /var/www/assests>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ServerName dev.rama.com
DocumentRoot“/var/www/assests”
使用别名1
ProxyPassMatch^(.\.bmp)$!
ProxyPassMatch^(.\.css)$!
ProxyPassMatch^(.\.gif)$!
ProxyPassMatch^(.\.jpg)$!
ProxyPassMatch^(.\.js)$!
ProxyPassMatch^(.\.png)$!
选项索引跟随符号链接
不允许超限
命令允许,拒绝
通融
注:
我们对web应用程序的所有资产都位于HTTP服务器上
/var/www/assests,我访问的url是端口80上的dev.rama.com
所以当它看到这个ProxyPassMatch^(.*.css)$时强>
Web服务器知道css文件是http服务器的本地文件,我们不需要转到Jboss应用服务器
更多信息在我遇到了同样的问题,在年,我们使用ApacheHTTP服务器处理静态内容,使用JBOSS作为7服务器处理动态内容(JSFWeb应用程序) 因此,在加载模块末尾添加以下属性
CreateBalancers 0
告诉“0:在httpd中定义的所有虚拟主机中创建。”
更多信息,请访问:
下面的配置解决了图像和手写板无法显示的问题
<VirtualHost *:80>
ServerName dev.rama.com
DocumentRoot "/var/www/assests"
UseAlias 1
ProxyPassMatch ^(.*\.bmp)$ !
ProxyPassMatch ^(.*\.css)$ !
ProxyPassMatch ^(.*\.gif)$ !
ProxyPassMatch ^(.*\.jpg)$ !
ProxyPassMatch ^(.*\.js)$ !
ProxyPassMatch ^(.*\.png)$ !
<Directory /var/www/assests>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ServerName dev.rama.com
DocumentRoot“/var/www/assests”
使用别名1
ProxyPassMatch^(.\.bmp)$!
ProxyPassMatch^(.\.css)$!
ProxyPassMatch^(.\.gif)$!
ProxyPassMatch^(.\.jpg)$!
ProxyPassMatch^(.\.js)$!
ProxyPassMatch^(.\.png)$!
选项索引跟随符号链接
不允许超限
命令允许,拒绝
通融
注:
我们对web应用程序的所有资产都位于HTTP服务器上
/var/www/assests,我访问的url是端口80上的dev.rama.com
所以当它看到这个ProxyPassMatch^(.*.css)$时强>
Web服务器知道css文件是http服务器的本地文件,我们不需要转到Jboss应用服务器
更多信息请访问Hi@Michal Karm Babacek:您能解释或发布apache服务器中具有多个平衡器的modcluster吗?Hi@Michal Karm Babacek:您能解释或发布apache服务器中具有多个平衡器的modcluster吗?