首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何测试ajp工作人员(tomcat10,Apache2.4.6)?

如何测试ajp工作人员(tomcat10,Apache2.4.6)?
EN

Server Fault用户
提问于 2021-10-14 15:25:44
回答 1查看 973关注 0票数 0

我有一个简单的服务器设置:

  1. Apache 2.4.6
  2. 与Tomcat交谈的JK工人,那里有一项休息服务
  3. Tomcat 10

虚拟主机

在我的虚拟主机文件中,我有这个配置(**中的片段)**:

代码语言:javascript
复制
    Require all granted

    RewriteEngine On

    # [...]
    RewriteRule co2avatar-app/sdp-api$ sdp-api/test/ [PT]
    RewriteRule co2avatar-app/sdp-api/(.*)$ sdp-api/$1 [PT]

    # anything else to index.html
    RewriteRule co2avatar-app/(.+) co2avatar-app/index.html [L]


# worker definition
JkMount /sdp-api/* ajp13_worker_prod
JkMount /sdp-api ajp13_worker_prod

工人

代码语言:javascript
复制
# workers.properties -

# workers.tomcat_home=/opt/tomcat/latest/

#
# workers.java_home should point to your Java installation. Normally
# you should have a bin and lib directories beneath it.
#
workers.java_home=/usr/lib/jvm/

ps=/
worker.list=ajp13_worker_prod,ajp13_worker_test,ajp13_worker_tomcat10_test,ajp_worker_tomcat10_prod

#
#------ ajp13_worker WORKER DEFINITION ------------------------------
#---------------------------------------------------------------------
#
worker.ajp13_worker_prod.port=8009
worker.ajp13_worker_prod.host=localhost
worker.ajp13_worker_prod.type=ajp13

worker.ajp13_worker_test.port=8010
worker.ajp13_worker_test.host=localhost
worker.ajp13_worker_test.type=ajp13

worker.ajp13_worker_tomcat10_test.port=8020
worker.ajp13_worker_tomcat10_test.host=localhost
worker.ajp13_worker_tomcat10_test.type=ajp13

worker.ajp13_worker_tomcat10_prod.port=8019
worker.ajp13_worker_tomcat10_prod.host=localhost
worker.ajp13_worker_tomcat10_prod.type=ajp13

# we do not use load balancing at all.

我应该指出,ajp13_worker_prod工作者指向Tomcat 9实例中的服务,ajp13_worker_tomcat10_prod工作者指向Tomcat 10实例。但是对于不同的虚拟主机(这实际上是测试系统),这是非常好的工作方式。

一切都很好直到我换了线

代码语言:javascript
复制
JkMount /sdp-api/* ajp13_worker_prod
JkMount /sdp-api ajp13_worker_prod

代码语言:javascript
复制
JkMount /sdp-api/* ajp13_worker_tomcat10_prod
JkMount /sdp-api ajp13_worker_tomcat10_prod

Tomcat中的服务运行良好,我可以通过curl http://localhost:6085/[...]联系到它们。因此,端口是开放的,供本地主机使用。

但我不能从外面通过阿帕奇联系他们。在这里,我得到了一个500与The server encountered an internal error or misconfiguration and was unable to complete your request.

我扫描了所有可能的错误日志文件,但我没有发现问题,特别是在Apache日志中。

有没有办法测试JK工作人员?

有办法测试Tomcat连接器吗?

在server.xml:中如下所示。HTTP连接器可以工作,但可能不是这个吗?Apache ( ajp工作人员)和Tomcat之间存在一个问题,但是只向Apache发出请求并不有用。

(初学者问题:)是否可以只重新启动JK模块?

下面是Apache error_log的摘录(mod_jk.log中没有任何内容):

代码语言:javascript
复制
[jk:warn] [pid 1286] No JkShmFile defined in httpd.conf. Using default /etc/httpd/logs/jk-runtime-status
[slotmem_shm:debug] [pid 1286] mod_slotmem_shm.c(448): AH02301: attach looking for /run/httpd/slotmem-shm-mod_heartmonitor.shm
[lbmethod_heartbeat:notice] [pid 1286] AH02282: No slotmem from mod_heartmonitor
[ssl:debug] [pid 1286] ssl_engine_pphrase.c(181): AH02199: SSL not enabled on vhost h2862201.stratoserver.net:80, skipping SSL setup
[ssl:debug] [pid 1286] ssl_engine_pphrase.c(239): AH02202: Init: Read server certificate from '/etc/letsencrypt/live/co2-avatar.com/cert.pem'
[ssl:debug] [pid 1286] ssl_engine_pphrase.c(239): AH02202: Init: Read server certificate from '/etc/letsencrypt/live/co2-avatar.com/cert.pem'
[ssl:debug] [pid 1286] ssl_engine_pphrase.c(239): AH02202: Init: Read server certificate from '/etc/letsencrypt/live/co2-avatar.com/fullchain.pem'
[ssl:debug] [pid 1286] ssl_engine_pphrase.c(239): AH02202: Init: Read server certificate from '/etc/letsencrypt/live/co2-avatar.com/cert.pem'
[ssl:debug] [pid 1286] ssl_engine_pphrase.c(239): AH02202: Init: Read server certificate from '/etc/letsencrypt/live/co2-avatar.com/cert.pem'
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(391): AH00821: shmcb_init allocated 512000 bytes of shared memory
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(407): AH00822: for 511912 bytes (512000 including header), recommending 32 subcaches, 88 indexes each
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(440): AH00824: shmcb_init_memory choices follow
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(442): AH00825: subcache_num = 32
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(444): AH00826: subcache_size = 15992
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(446): AH00827: subcache_data_offset = 2128
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(448): AH00828: subcache_data_size = 13864
[socache_shmcb:debug] [pid 1286] mod_socache_shmcb.c(450): AH00829: index_num = 88
[socache_shmcb:info] [pid 1286] AH00830: Shared memory socache initialised
[ssl:info] [pid 1286] AH01887: Init: Initializing (virtual) servers for SSL
[ssl:debug] [pid 1286] ssl_engine_init.c(1502): Init: SSL server IP/port overlap: h2862201.stratoserver.net:443 (/etc/httpd/conf.d/ssl.conf:57) vs. co2-avatar.com:443 (/etc/httpd/conf.d/vhost-le-ssl.conf:4)
[ssl:debug] [pid 1286] ssl_engine_init.c(1502): Init: SSL server IP/port overlap: gitlab.sustainable-data-platform.org:443 (/etc/httpd/conf.d/gitlab-le-ssl.conf:2) vs. co2-avatar.com:443 (/etc/httpd/conf.d/vhost-le-ssl.conf:4)
[ssl:debug] [pid 1286] ssl_engine_init.c(1502): Init: SSL server IP/port overlap: co2avatar.org:443 (/etc/httpd/conf.d/co2avatar.conf:66) vs. co2-avatar.com:443 (/etc/httpd/conf.d/vhost-le-ssl.conf:4)
[ssl:warn] [pid 1286] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[ssl:info] [pid 1286] AH01876: mod_ssl/2.4.6 compiled against Server: Apache/2.4.6, Library: OpenSSL/1.0.2k
[proxy:debug] [pid 1292] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1292] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1292] proxy_util.c(1939): AH00931: initialized single connection worker in child 1292 for (*)
[proxy:debug] [pid 1293] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1293] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1293] proxy_util.c(1939): AH00931: initialized single connection worker in child 1293 for (*)
[proxy:debug] [pid 1295] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1295] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1295] proxy_util.c(1939): AH00931: initialized single connection worker in child 1295 for (*)
[mpm_prefork:notice] [pid 1286] AH00163: Apache/2.4.6 (CentOS) mod_jk/1.2.48 OpenSSL/1.0.2k-fips PHP/7.2.29 configured -- resuming normal operations
[mpm_prefork:info] [pid 1286] AH00164: Server built: Nov 16 2020 16:18:20
[core:notice] [pid 1286] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
[mpm_prefork:debug] [pid 1286] prefork.c(1005): AH00165: Accept mutex: sysvsem (default: sysvsem)
[proxy:debug] [pid 1294] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1294] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1294] proxy_util.c(1939): AH00931: initialized single connection worker in child 1294 for (*)
[proxy:debug] [pid 1296] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1296] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1296] proxy_util.c(1939): AH00931: initialized single connection worker in child 1296 for (*)
[proxy:debug] [pid 1378] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1378] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1378] proxy_util.c(1939): AH00931: initialized single connection worker in child 1378 for (*)
[proxy:debug] [pid 1408] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1408] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1408] proxy_util.c(1939): AH00931: initialized single connection worker in child 1408 for (*)
[proxy:debug] [pid 1859] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 1859] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 1859] proxy_util.c(1939): AH00931: initialized single connection worker in child 1859 for (*)
[proxy:debug] [pid 15109] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 15109] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 15109] proxy_util.c(1939): AH00931: initialized single connection worker in child 15109 for (*)
[proxy:debug] [pid 17029] proxy_util.c(1843): AH00925: initializing worker proxy:reverse shared
[proxy:debug] [pid 17029] proxy_util.c(1888): AH00927: initializing worker proxy:reverse local
[proxy:debug] [pid 17029] proxy_util.c(1939): AH00931: initialized single connection worker in child 17029 for (*)
EN

回答 1

Server Fault用户

发布于 2021-10-15 09:58:34

嗯,这很尴尬,但我在我的员工名单上使用了一个错误的名字。

ajp_worker_tomcat10_prod而不是ajp13_worker_tomcat10_prod

有趣的是,没有出现错误消息,比如worker没有找到,或者worker没有配置。只是来自Apache的奇怪消息,而不是mod_jk.log或Apache的error.log中的任何东西。

这也可能是配置问题。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1080555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档