0 0

如何用apache + tomcat 虚拟主机30

本人想配置虚拟主机,也就是提供jsp的空间
现在有些不明白

虚拟主机需要解析tomcat中的server.xml中的host元素,但是如果一个客户申请了一个虚拟主机我就得添加一个,修改server.xml需要重启tomcat,这样是不行的啊

怎么实现那种普通主机的效果,比如说客户上传应用到tomcat/webapp下的东西要重启才可以正确访问,但是怎么来控制tomcat呢,如果重启tomcat其他的客户的应用不是都停了吗?怎么实现的停止自己注册的那个tomcat呢,还是每一个用户给他分配一个tomcat?但是没个用户分配一个tomcat端口怎么来管理呢?

这些问题搞了好久了,谁来帮帮我啊 ?
问题补充:
可以考虑这样做:
每个用户一个Tomcat,一个tomcat一个端口,tomcat里不用配置虚拟主机
在apache里配虚拟主机,然后转接到tomcat


这样怎么转,我怎么转的有问题,第一个虚拟主机可以访问第二个就访问不了,第一个tomcat停了,访问第一个虚拟主机跑到第二个去了,不管怎么样,访问第二个虚拟主机就是行不通

如下配置:


ProxyPass /images/ !

ProxyPass / ajp://127.0.0.1:8009/

ProxyPassReverse / ajp://127.0.0.1:8009/



<VirtualHost   *:80>
ServerName   host1.renci.com  
DocumentRoot   D:\tomcat1\webapps
</VirtualHost>  

<VirtualHost   *:80>
ServerName   host2.renci.com
DocumentRoot   D:\tomcat2\webapps
</VirtualHost>

问题补充:
可以考虑这样做:
每个用户一个Tomcat,一个tomcat一个端口,tomcat里不用配置虚拟主机
在apache里配虚拟主机,然后转接到tomcat


这样配置之后有个第方有问题了,就是第一个tomcat停了在访问第一个tomcat的应用就跳到第二个tomcat应用去了 ,还有一点,启动两个tomcat,我这里使用的是ajp

#表示Apache把所有80端口的请求都转发给了Tomcat的8009
ProxyPass / ajp://127.0.0.1:8009/
ProxyPassReverse / ajp://127.0.0.1:8009/

这里要怎么配置呢tomcat的ajp端口不能重复,否则启动不了
2009年1月06日 11:44

10个答案 按时间排序 按投票排序

0 0

楼上的朋友,你可以考虑开发一个虚拟主机管理系统。
我曾经规划过一个方案,可以管理 ftp,数据库,apache,tomcat,续费什么的。现在国内有一些jsp主机提供商已经开发出类似的系统。你可以参考一下。

2009年1月08日 15:42
0 0

请问一下,有没有动态一点的。比如:一个用户注册,就自动新建一个tomcat,并且,apache不用重启就增加一个<VirtualHost> 

2009年1月08日 11:55
0 0


ApacheTomcat整合教程

2009年1月07日 14:16
0 0

我又找到一篇文章,你看看把。希望对你有帮助

http://www.linuxjournal.com/article/8561

虚拟主机配置,还特别需要考虑安全问题,也希望你查询一下这方面的资料

2009年1月07日 11:21
0 0

我配置过虚拟主机,我来说一下我的经验把。

我的配置是使用一个apache,多个tomcat整合。
对外访问使用apache80端口,其他tomcat有各自的端口,保证多个tomcat能正常启动。
apache与Tomcat使用 mod_jk  进行通信

具体方法是 :

1.修改Tomcat server.xml文件,修改默认的三个端口号,保证多个Tomcat能正常启动,三个端口号分别为:8015 8109 8443

<Server port="8105" shutdown="SHUTDOWN" debug="0">

<Connector port="8109"
	enableLookups="false" redirectPort="8443" debug="0"
      protocol="AJP/1.3" />


同时将下面的代码注释掉
 <!-- 
  <Connector port="8080"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               debug="0" connectionTimeout="20000"
               disableUploadTimeout="true" />
 -->


2.配置 mod_jk

创建workers.properties,信息如下
worker.list=worker1,worker2,worker3
# Set properties for worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
# Set properties for worker2
worker.worker2.type=ajp13
worker.worker2.host=localhost
worker.worker2.port=8109
# Set properties for worker3
worker.worker3.type=ajp13
worker.worker3.host=localhost
worker.worker3.port=8209


注意 worker.worker1.port 与tomcat的 Connector port 端口要一致。

同时需要在apache中进行配置,实例代码如下:
JkWorkersFile "/etc/httpd/conf/workers.properties"
JkLogFile     "/var/logs/www/mod_jk.log"
JkLogLevel  info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions     +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat     "%w %V %T"


3.配置虚拟主机,代码如下

<VirtualHost *:80>
    ServerName domain1
    JkMount  /servlets-examples/* worker1
</VirtualHost>
<VirtualHost *:80>
    ServerName domain2
    JkMount  /servlets-examples/* worker2
</VirtualHost>
<VirtualHost *:80>
    ServerName domain3
    JkMount  /servlets-examples/* worker3
</VirtualHost>


2009年1月07日 11:20
0 0

为什么不在apache上面去配置的呢,非要在tomcat上面配置

你直接在apache上面配置虚拟映射好了

2009年1月06日 18:10
0 0

ServerAlise = *.testdomain.com  

类似这么做吧。

2009年1月06日 15:53
0 0

apache kill -3 可以实现热加载配置:)

2009年1月06日 13:41
0 0

引用
可以考虑这样做:
每个用户一个Tomcat,一个tomcat一个端口,tomcat里不用配置虚拟主机
在apache里配虚拟主机,然后转接到tomcat

请问一下1楼的朋友:
    那如果实现动态的添加虚拟主机,比如:一个用户注册,马上为他开通二级域名http://xxx.testdomain.com,就可以立即访问到他的tomcat的应用呢? 而不用人工的去修改配置文件,还重启apache.
   谢谢回答.

2009年1月06日 13:06
0 0

可以考虑这样做:
每个用户一个Tomcat,一个tomcat一个端口,tomcat里不用配置虚拟主机
在apache里配虚拟主机,然后转接到tomcat

2009年1月06日 13:02

相关推荐

    apache+tomcat7+jk负载均衡

    4. 在Apache的虚拟主机配置中,使用mod_jk的`JkMount`指令将特定的URL或目录映射到对应的worker,从而实现请求的分发。 5. 启动Apache和Tomcat,验证配置是否正确,可以通过访问测试页面和观察日志文件来确认负载...

    apache+tomcat整合.pdf

    6. 配置虚拟主机:在Apache的httpd.conf文件中配置虚拟主机,使得不同的域名可以分别指向Apache或Tomcat处理的资源。 在整个过程中,需要考虑到配置文件的配置项。例如,在httpd.conf中,LoadModule指令用于加载JK...

    Apache+tomcat实现负载均衡

    在Apache配置文件中,添加类似以下的虚拟主机配置: ```apacheconf *:80&gt; ServerName example.com ProxyPass / http://backend1:8080/ ProxyPassReverse / http://backend1:8080/ ``` 这里`example.com`...

    apache + tomcat + mod_jk集群

    5. **配置mod_jk模块**:在httpd.conf中,配置一个虚拟主机,并使用JkMount指令来指定哪些URL应该由mod_jk处理。这通常包括所有以"/"开头的URL,表示所有请求都将被转发到Tomcat。 6. **配置Tomcat**:在Tomcat的...

    Apache+JK+Tomcat搭建负载均衡

    Apache+JK+Tomcat搭建负载均衡是一种常见的高可用性和性能优化策略,主要目的是分散网络流量,提高服务的稳定性和响应速度。这个方案特别适合大型网站或应用,可以有效防止单点故障,提升用户体验。 首先,负载均衡...

    apache+tomcat+phpmyadmin打包

    为了实现这样的集成,你需要配置Apache的虚拟主机和mod_proxy模块,设置适当的代理规则。同时,确保Tomcat配置正确,能够处理来自Apache的请求。对于PHPMyAdmin,需要将其解压并放在Apache服务器的文档根目录下,...

    Apache+Tomcat+6高级编程

    1. **Apache基础**:讲解Apache服务器的基本配置和管理,包括虚拟主机的设置、URL重写规则的使用(如通过mod_rewrite模块)、模块的加载和配置,以及安全性设置,如SSL/TLS加密。 2. **Tomcat基础**:介绍Tomcat的...

    Apache+Tomcat环境搭建

    - **配置虚拟主机**:`ServerAdmin localhost` 指定服务器管理员,`DocumentRoot` 设置网站根目录,`ServerName` 设置服务器名称。 - **允许所有访问**:修改 `Directory` 节点,解除访问限制,允许所有 IP 访问。...

    apache+tomcat+jk

    这包括设置合适的端口(通常Apache监听80端口),以及配置必要的虚拟主机。 2. **安装与配置Tomcat**:然后,你需要安装Tomcat,确保它可以处理Java应用。Tomcat默认运行在8080或其他非标准端口,如8009。确保...

    apache+tomcat配置文件

    2. **虚拟主机(Virtual Hosts)**:在Apache配置中,需要设置虚拟主机来区分不同的域名或项目。每个虚拟主机可以有自己的文档根目录和配置。 3. **负载均衡(Load Balancing)**:通过mod_proxy_balancer模块,...

    Apache+Tomcat+Linux集群和负载均衡

    - 在Linux虚拟机上安装Apache和Tomcat。具体IP地址配置如下: - 第一台Linux机器:IP为172.16.116.1,安装有Tomcat,端口为8009,JDK版本为6.0。 - 第二台Linux机器:IP为172.16.116.2,同样安装有Tomcat,端口...

    apache+tomcat整合配置

    在Apache的配置文件中,定义一个虚拟主机,并设置反向代理到Tomcat。以下是一个基本示例: ```apacheconf *:80&gt; ServerName yourdomain.com ProxyPreserveHost On ProxyPass / http://localhost:8080/ ...

    Apache + Tomcat 实现简单集群

    5. **定义虚拟主机和负载均衡策略**:在Apache的配置中,为每个Tomcat实例创建虚拟主机,并定义负载均衡策略。常见的策略有轮询、最少连接数、IP哈希等。 6. **测试和监控**:启动Apache和所有Tomcat实例,进行测试...

    apache + tomcat 负载均衡worker模式初探

    4. **配置虚拟主机**:接下来,配置Apache的VirtualHost,将所有请求转发到之前定义的负载均衡集群。例如: ``` *:80&gt; ServerName example.com ProxyPass / balancer://mycluster/ ProxyPassReverse / balancer...

    Apache + Tomcat + jk配置负载均衡以及虚拟主机 实现多域名、多用户同时使用

    本文将详细介绍如何在Windows平台上使用Apache、Tomcat和JK进行虚拟主机配置和负载均衡设置,Linux平台的配置过程与此基本一致。 #### 二、Apache配置多个虚拟主机 Apache作为一款高性能的Web服务器软件,在配置...

    apache+tomcat集群

    **httpd.conf** 文件是 Apache 的主配置文件,其中包含了服务器的基本设置、模块启用、虚拟主机等配置信息。在集群环境中,我们需要在 httpd.conf 中配置负载均衡的相关参数,例如启用 mod_jk 模块,并设置 workers ...

    apache+tomcat集群配置文件和文档说明

    然后,配置虚拟主机,使用ProxyPass指令将请求转发到Tomcat实例: ```apacheconf *:80&gt; ServerName your.domain.com ProxyPass / http://tomcat1.example.com:8080/ ProxyPassReverse / ...

    linux下apache+tomcat实现集群

    - 编写虚拟主机配置:在`/etc/httpd/conf.d`目录下创建一个新的配置文件,例如`cluster.conf`,定义负载均衡策略。例如,使用轮询策略: ``` BalancerMember http://server1:8080 loadfactor=1 route=1 ...

Global site tag (gtag.js) - Google Analytics