Apache代理多个Tomcat共用80端口的配置方法(win7操作系统) k.o 微软IIS服务器代理Tomcat

上一篇提到一台机器可以配置多个Tomcat 容器, 来启动不同的项目。但是一般机房的服务器只开放80端口,多个Tomcat启动占用多个端口,就需要统一外网访问的端口,此时就需要使用Apache做统一端口的代理。

一.介绍

Apache是世界使用排名第一的Web服务器软件。本身只支持html 即普通网页。可以通过插件支持php, 还可以与 Tomcat 连通来支持jsp等。

二. Win7安装配置

1 .下载

download地址:http://httpd.apache.org/download.cgi

win下安装时可以选择是否包括OpenSSL(SSL协议):

httpd-2.2.25-win32-x86-no_ssl.msi

httpd-2.2.25-win32-x86-openssl-0.9.8y.msi  

2 .安装

如果Apache部署在本地计算机,Network Domain和Server Name都填localhost。

Email Address可随意填写。

3 注意事项:

apache服务器代理功能需使用2.2及以上版本,改版本代理部分已经重新编写,较以前有大幅度的性能提升。

4、 apache配置

修改安装目录下的conf/下的httpd.conf。

1)  备份配置文件

首先备份httpd.conf,复制一份http.conf并改名httpd.conf.bak;以备还原。

2)  监听端口:

#Listen 12.34.56.78:80

Listen 80 将监听端口改为对应的端口。我将端口改为Listen 8898.该配置将会导致该机器所有的ip地址均会被绑定到8888端口;会导致带有网络风险。

部署机器采用绑定的ip和端口的方式。格式为:   Listen 12.34.56.78:80

3)  启用代理模块

将#LoadModule proxy_module modules/mod_proxy.so前的#去掉;

4)  启用代理模块

将# LoadModuleproxy_http_module modules/mod_proxy_http.so前的#去掉;

5)  首页配置

将<Directory "C:/ProgramFiles/Apache Software Foundation/Apache2.2/htdocs">

的配置Options Indexs  FollowSymLinks改为OptionsFollowSymLinks。

6)  在末尾追加

ServerTokens ProductOnly

ServerSignature Off

7)  代理设置

ProxyRequests Off

 

<Proxy /docs>

Order deny,allow

Allow from all

</Proxy>

 

ProxyPass /docs  http://127.0.0.1:9080/docs

ProxyPassReverse/docshttp://127.0.0.1:9080/docs

8)  如果配置多个,复制以下配置,根据实际情况,修改即可。

<Proxy /docs>

Order deny,allow

Allow from all

</Proxy>

 

ProxyPass /docs  http://127.0.0.1:7080/docs

ProxyPassReverse/docs http://127.0.0.1:7080/docs

9)  关于<Proxy /docs>

您可以通过<Proxy>的阻止功能来控制谁能访问您的代理。示例如下:

<Proxy *>
Order Deny,Allow
Deny from all
Allow from 192.168.0
</Proxy>

详细配置和说明见下:

Order指令控制默认的访问状态与AllowDeny指令生效的顺序。Ordering取值范围是以下几种范例之一:

Deny,Allow

Deny指令在Allow指令之前被评估。默认允许所有访问。任何不匹配Deny指令或者匹配Allow指令的客户都被允许访问。

Allow,Deny

Allow指令在Deny指令之前被评估。默认拒绝所有访问。任何不匹配Allow指令或者匹配Deny指令的客户都将被禁止访问。

Mutual-failure

只有出现在Allow列表并且不出现在Deny列表中的主机才被允许访问。这种顺序与"OrderAllow,Deny"具有同样效果,不赞成使用。

关键字只能用逗号分隔;它们之间不能有空格。注意在所有情况下每个AllowDeny指令语句都将被评估。

在下面的例子中,apache.org域中所有主机都允许访问,而其他任何主机的访问都将被拒绝。

Order Deny,Allow
Deny from all
Allow from apache.org

下面例子中,apache.org域中所有主机,除了foo.apache.org子域包含的主机被拒绝以外,其他都允许访问。而所有不在apache.org域中的主机都不允许访问,因为默认状态是拒绝对服务器的访问。

Order Allow,Deny
Allow from apache.org
Deny from foo.apache.org

另一方面,如果上个例子中的Order指令改变为"Deny,Allow",将允许所有主机的访问。这是因为,不管配置文件中指令的实际顺序如何,"Allow from apache.org"指令会最后被评估到并覆盖之前的"Deny from foo.apache.org"。所有不在apache.org域中的主机也允许访问是因为默认状态被改变到了允许。

即使没有伴随AllowDeny指令,一个Order指令的存在也会影响到服务器上某一个部分的访问,这是由于它对默认访问状态的影响。例如:

<Directory /www>
Order Allow,Deny
</Directory>

这样将会禁止所有对/www目录的访问,因为默认状态将被设置为拒绝。

10)        其他配置见apache相关文档。


至此Apache配置完成

测试是否配置成功

启动Apache后访问如下地址 出现 it works!表示apache能够成功启动。



访问http://127.0.0.1:8898/docs  如下图:表示代理的Tomcat容器中启动的项目也成功了。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

prefectjava

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值