java - Apache + 汤姆猫

标签 java apache tomcat dns

我需要这样的配置:

如果在 www.mydomain.com 上调用 Apache 将响应我的博客,我希望 tomcat 响应 thirddomain.mydomain.com

我配置了一个 worker 以这种方式响应 thirddomain.mydomain.com:

<VirtualHost thirddomain.mydomain.com:80>
        JkMount /*    myworker
        ServerName thirddomain.mydomain.com
</VirtualHost>

我的 worker 是这样配置的:

worker.list=myworker
worker.myworker.port=8009
worker.myworker.host=thirddomain.mydomain.com
worker.myworker.type=ajp13

我还有一个指向 www 的标准虚拟主机

<VirtualHost www.mydomain.com:80>
    DocumentRoot /var/www/html/blog/
    ServerName www.mydomain.com
</VirtualHost>  

tomcat上的server.xml是这个:

   <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    <Engine name="Catalina" defaultHost="thirddomain.mydomain.com">
      <Host name="thirddomain.mydomain.com"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log." suffix=".txt" resolveHost="false"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b" />
      </Host>
    </Engine>

问题是 apache 在 www 和 mythirddomain 上都有响应。我如何配置它以响应不同的第三方域?

谢谢

最佳答案

首先将“thirddomain.mydomain.com”(子域)映射到一个有效目录,以检查该配置是否在没有 ajp 和 Tomcat 的情况下工作(注释掉 JKMount)。

DocumentRoot /var/www/html/anotherDir/index.html

如果可行,请取消注释 JKMount 并将其更改为使用 ip:

worker.myworker.host=thirddomain.mydomain.com

应该是:

worker.myworker.host=127.0.0.1

(我猜 Tomcat 与您的 Web 服务器在同一台服务器上)。在 Engine 元素中也添加工作人员名称:

 <Engine jvmRoute="myworker" name="Catalina" defaultHost="thirddomain.mydomain.com">

关于java - Apache + 汤姆猫,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25000414/

相关文章:

apache - 使用 dispatch.cgi 运行 CGI 时出现 perl Dancer 问题

android - honeycomb中执行Http post报错

ajax - 使用 Nginx 作为代理,ajax 请求每隔一个请求得到 405

Java XML 解析 DOM 性能

java - 查找JDK是openJDK还是Oracle JDK

java - 如何比较Arraylist中不同数组中的两个元素?

linux - 如何使我的 git 存储库可通过 HTTP 访问

tomcat - 从 Eclipse 将 Maven Web 应用程序部署到 Tomcat

java - 运行仅部署时出错 YYY : Address localhost:8081 is already in use

java:将图标放入 .jar 文件中以便 Windows 资源管理器可以识别它们?