httpd tomcat mod_jk.so整合

linjky 2017-08-04 03:46:08
系统:centos7 mini
httpd2.4.6和tomcat7.0.69都是用yum安装。两个服务都可以正常使用。但配置了mod_jk后httpd就无法启动了。
mod_jk.so是用源码编译的,版本1.2.42,此文件命名为mod_jk-1242.so放在"/etc/httpd/modules"目录下。
然后在"/etc/httpd/conf"目录下生成mod_jk-1242.conf和workers.properties两个文件。
mod_jk-1242.conf内容:(此文件已在httpd.conf中导入)
LoadModule jk_module modules/mod_jk-1242.so
JkWorkersFile conf/workers.properties
JkLogFile /var/log/httpd/mod_jk.log
JkshmFile /var/log/httpd/mod_jk.shm
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMount /servlet/* worker1
JkMount /*.jsp worker1
JkMount /*.do worker1
JkMount /*.action worker1

workers.properties内容:
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=127.0.0.1
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
配置完后启动httpd出错,提示我用systemctl status httpd 和 journalctl -xe 查看信息

systemctl status httpd信息:
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Fri 2017-08-04 11:14:07 CST; 1min 0s ago
Docs: man:httpd(8)
man:apachectl(8)
Process: 2465 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
Process: 2464 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)
Main PID: 2464 (code=exited, status=1/FAILURE)

Aug 04 11:14:07 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Aug 04 11:14:07 localhost.localdomain httpd[2464]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
Aug 04 11:14:07 localhost.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
Aug 04 11:14:07 localhost.localdomain kill[2465]: kill: cannot find process ""
Aug 04 11:14:07 localhost.localdomain systemd[1]: httpd.service: control process exited, code=exited status=1
Aug 04 11:14:07 localhost.localdomain systemd[1]: Failed to start The Apache HTTP Server.
Aug 04 11:14:07 localhost.localdomain systemd[1]: Unit httpd.service entered failed state.
Aug 04 11:14:07 localhost.localdomain systemd[1]: httpd.service failed.

找了好多天了,一直找不到错在哪,只要把mod_jk配置文件注释掉就httpd可以正常启动,请高人给找找问题出在哪???
...全文
710 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
木昜_ 2017-10-31
  • 打赏
  • 举报
回复
引用 1 楼 linjky 的回复:
今天查了下httpd的error_log里面有写: Initializing shm:/var/log/httpd/mod_jk.shm.2247 errno=13. Unable to start due to shared memory failure.
看看有没有这个文件 /var/log/httpd/mod_jk.shm
linjky 2017-08-22
  • 打赏
  • 举报
回复
我试过了,跟SELinux没有关系。
linjky 2017-08-17
  • 打赏
  • 举报
回复
再回复下,也没是SELinux的问题,我装的虚拟机有点多,有点忘了到底关没关闭它了
linjky 2017-08-17
  • 打赏
  • 举报
回复
那个虚拟机我给删了,看不了了,不过我感觉应该不是SELinux的问题。我上面不是有一个用源码安装成功的列子吗?那个例子就没有就没有关闭SELinux。 不过还是感觉你回答我的问题,非常感谢。
darksss 2017-08-17
  • 打赏
  • 举报
回复
试试是不是SELinux的影响。 “setenforce 0”临时关闭SELinux后启动httpd试试。
linjky 2017-08-09
  • 打赏
  • 举报
回复
今天找到了JkshmFile /var/log/httpd/mod_jk.shm这里的一个错误,给改成JkShmFile /var/log/httpd/mod_jk.shm后还是报一样的错误。郁闷了!!! 今天直接新装了一个centos7用源码安装了httpd-2.4.27、tomcat-8.5.16、mod_jk-1.2.42后竟然配置成了!!! 上的面的贴子中的错误还是解决不了。版本兼容的问题?我看又不像呀。 配置成功后我试了试,写下我的感觉,如果不对,希望以后的各位多加指正: 只能apache调用tomcat解读jsp,不能tomcat调用apache解读html; jsp文件要在tomcat的web目录里,而apache的web目录里可以没有这个jsp文件,而html文件相反。 难道以后要在两个web目录里都部署上网站?或两个web目录指定同一个web目录? 以后这个网站有个登录、session或其它什么的能正常工作? 先到这,以后有什么不懂的再来补充。如果有哪位高人看到这个贴子的话帮忙回答一下,如果不时间不方便,也请说个方向,我可以自己去查。
linjky 2017-08-07
  • 打赏
  • 举报
回复
用debug记录了下mod_jk.log,内容如下: [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_set_time_fmt::jk_util.c (486): Pre-processed log time stamp format is '[%a %b %d %H:%M:%S %Y]' [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] dump_options::mod_jk.c (674): JkOption 'ForwardURICompat' set in server 'localhost.localdomain' [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] dump_options::mod_jk.c (682): JkOption 'ForwardURIEscaped' set in server 'localhost.localdomain' [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] dump_options::mod_jk.c (706): JkOption 'ForwardKeySize' set in server 'localhost.localdomain' (default) [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] dump_options::mod_jk.c (734): JkOption 'CollapseSlashesUnmount' set in server 'localhost.localdomain' (default) [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_open::jk_uri_worker_map.c (900): rule map size is 2 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_add::jk_uri_worker_map.c (850): wildchar rule '/servlet/*=worker1' source 'JkMount' was added [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_add::jk_uri_worker_map.c (850): wildchar rule '/*.jsp=worker1' source 'JkMount' was added [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_dump::jk_uri_worker_map.c (178): uri map dump after map open: id=0, index=0 file='(null)' reject_unsafe=0 collapse_slashes=3 reload=60 modified=0 checked=0 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_dump::jk_uri_worker_map.c (185): generation 0: size=0 nosize=0 capacity=0 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_dump::jk_uri_worker_map.c (185): generation 1: size=2 nosize=0 capacity=4 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_dump::jk_uri_worker_map.c (198): NEXT (1) map #0: uri=/servlet/* worker=worker1 context=/servlet/* source=JkMount type=Wildchar len=10 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] uri_worker_map_dump::jk_uri_worker_map.c (198): NEXT (1) map #1: uri=/*.jsp worker=worker1 context=/*.jsp source=JkMount type=Wildchar len=6 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] init_jk::mod_jk.c (3533): Setting default connection pool max size to 1 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_map_read_property::jk_map.c (501): Adding property 'worker.list' with value 'worker1' to map. [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_map_read_property::jk_map.c (501): Adding property 'worker.worker1.port' with value '8009' to map. [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_map_read_property::jk_map.c (501): Adding property 'worker.worker1.host' with value '127.0.0.1' to map. [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_map_read_property::jk_map.c (501): Adding property 'worker.worker1.type' with value 'ajp13' to map. [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_map_read_property::jk_map.c (501): Adding property 'worker.worker1.lbfactor' with value '5' to map. [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_map_resolve_references::jk_map.c (783): Checking for references with prefix worker. with wildcard (recursion 1) [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_shm_calculate_size::jk_shm.c (143): JK_SHM_SLOT_SIZE defined as 384, need at least 384 [Mon Aug 07 14:15:33 2017][2425:140429726779520] [debug] jk_shm_calculate_size::jk_shm.c (177): shared memory will contain 1 ajp workers and 0 lb workers with 0 members 最后一行提了一句 shared memory是不是跟上面那个帖子的错误能对应上??
linjky 2017-08-07
  • 打赏
  • 举报
回复
今天查了下httpd的error_log里面有写: Initializing shm:/var/log/httpd/mod_jk.shm.2247 errno=13. Unable to start due to shared memory failure.

24,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Apache
社区管理员
  • Apache
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧