2014-09-22 141 views
3

我配置了tomcat运行在端口80与apache2和mod_jk,这很好。如果我重新启动系统,那么该站点将成为apache2的标准站点。如果我重新启动apache2(/etc/init.d/apache2 restart)该网站将来自tomcat。但为什么首先重新启动apache2后?apache2 tomcat7与mod_jk不工作系统重新启动后

任何想法?

登录重启系统后(在/ var /日志/的Apache2 /):

> mod_jk.log < 
[Mon Sep 22 16:29:10.042 2014] [3599:3074443008] [info] init_jk::mod_jk.c (3365): mod_jk/1.2.37 initialized 
[Mon Sep 22 16:29:10.042 2014] [3599:3074443008] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-manager' in uri map post processing. 
[Mon Sep 22 16:29:10.042 2014] [3599:3074443008] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-status' in uri map post processing. 
[Mon Sep 22 16:29:10.052 2014] [3600:3074443008] [info] init_jk::mod_jk.c (3365): mod_jk/1.2.37 initialized 
[Mon Sep 22 16:29:10.052 2014] [3600:3074443008] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-manager' in uri map post processing. 
[Mon Sep 22 16:29:10.052 2014] [3600:3074443008] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-status' in uri map post processing. 

> error.log < 
[Mon Sep 22 16:29:10 2014] [notice] Apache/2.2.22 (Debian) mod_jk/1.2.37 configured -- resuming normal operations 

日志重启Apache(在/ var /日志/的Apache2 /)后
> mod_jk.log < 
[Mon Sep 22 16:24:40.296 2014] [2256:3075069696] [info] init_jk::mod_jk.c (3365): mod_jk/1.2.37 initialized 
[Mon Sep 22 16:24:40.296 2014] [2256:3075069696] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-manager' in uri map post processing. 
[Mon Sep 22 16:24:40.296 2014] [2256:3075069696] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-status' in uri map post processing. 
[Mon Sep 22 16:24:40.298 2014] [2257:3075069696] [info] init_jk::mod_jk.c (3365): mod_jk/1.2.37 initialized 
[Mon Sep 22 16:24:40.298 2014] [2257:3075069696] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-manager' in uri map post processing. 
[Mon Sep 22 16:24:40.298 2014] [2257:3075069696] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-status' in uri map post processing. 

> error.log < 
[Mon Sep 22 16:24:40 2014] [notice] Apache/2.2.22 (Debian) mod_jk/1.2.37 configured -- resuming normal operations 
[Mon Sep 22 16:26:50 2014] [notice] caught SIGTERM, shutting down 

编辑1: 好吧,我已经测试了几次,发现apache2/tomcat7/mod_jk行为更疯狂xD 我会告诉你我的配置:

> local: hosts < 
192.168.84.129 migor 
192.168.84.129 test.migor 

> in tomcat server.xml < 
<Host name="test.migor" appBase="myapps/test" unpackWARs="true" autoDeploy="true" /> 

> worker.properties < 
workers.tomcat_home=/var/lib/tomcat7 
workers.java_home=/usr/lib/jvm/java-7 
ps=/ 
worker.list=ajp13_worker 
worker.ajp13_worker.port=8009 
worker.ajp13_worker.host=localhost 
worker.ajp13_worker.type=ajp13 
worker.ajp13_worker.lbfactor=1 

> sitea-available/test.migor < 
<Virtualhost test.migor> 
    JkMount /* ajp13_worker 
    ServerName test.migor 
    DocumentRoot /var/lib/tomcat7/myapps/test 
    ErrorLog /var/lib/tomcat7/logs/error.log 
    CustomLog /var/lib/tomcat7/logs/access.log common 
    <Directory /var/lib/tomcat7/myapps/test> 
     Options -Indexes 
    </Directory> 
</Virtualhost> 

现在的行为:

  • 下网址重新启动后: “test.migor /”, “migor /” 我的服务器的ip 192.168.84.129我会从Apache2的
  • 获得该网站重新启动后apache2我将从webapps和test.migor/myapps/test的页面获取migor /和192.168.84.129的tomcat页面。这里的问题,我期望在192.168.84.129的页面从apache2。

任何想法?

编辑2:

好吧,我已经忘了添加 “了NameVirtualHost test.migor” 向 “站点A可用/ test.migor” 和我的配置已经完全地覆盖的apache默认settiong。现在是我的行为。通过url“migor /”我可以调用默认的apache站点和URL“test.migor /”,我可以调用tomcat7/myapps/test中的tomcat主页。

但是,只有重新启动apache2后才会激活此行为(如果我之前已重新启动系统)。我将展示解决方案并将其发布到此处。也许在“编辑3”xD

回答

0

错误清楚地表明jk-managerjk-status没有在workers.property文件中准确定义。

请检查您的workers.properties文件,并进行以下更改:

worker.list=jk-manager 
worker.jk-manager.type=status 

worker.list=jk-status 
worker.jk-status.type=status 
worker.jk-status.read_only=true 

干杯!