为什么-在 uri 映射后期处理中找不到名为“jk-manager”的员工?

为什么-在 uri 映射后期处理中找不到名为“jk-manager”的员工?

我正在使用 apache2 + mod_jk(ajp 协议)+ tomcat7。

但我总是收到以下错误:

[Sat Mar 30 17:30:54.691 2013] [25238:3074365824] [info] init_jk::mod_jk.c (3365): mod_jk/1.2.37 initialized
[Sat Mar 30 17:30:54.691 2013] [25238:3074365824] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-manager' in uri map post processing.
[Sat Mar 30 17:30:54.691 2013] [25238:3074365824] [error] extension_fix::jk_uri_worker_map.c (564): Could not find worker with name 'jk-status' in uri map post processing.

有什么线索吗?

答案1

我相信您需要 tomcat 管理包(对我来说,它是 tomcat6-admin)来提供jk-managerjk-status。安装后,您只需在文件中配置这两项workers.properties

如果找不到workers.properties文件,请查看您的 apache 配置,例如:grep -r JkWorkersFile /etc/apache2。配置应该包含类似以下内容,指示文件的路径workers.properties

<IfModule jk_module>
    JkWorkersFile /etc/libapache2-mod-jk/workers.properties
    # ...
</IfModule>

在您的workers.properties文件中:

确保您具有以下内容或类似内容:

# configure jk-status
worker.list=jk-status
worker.jk-status.type=status
worker.jk-status.read_only=true
# configure jk-manager
worker.list=jk-manager
worker.jk-manager.type=status

答案2

workers.properties尝试打开文件(例如在记事本中)检查是否存在不需要的特殊字符,如此处建议的那样(https://stackoverflow.com/questions/3666649/apache-httpd-2-2-x-mod-jk-1-2-30-tomcat-6-error-could-not-find-worker-with)。

相关内容