【发布时间】:2017-04-04 20:33:19
【问题描述】:
- 已下载 Tomcat7 64 位二进制文件
- 已下载 64 位 Apache 服务器 (2.4.X) 二进制文件
- 为 win64 下载 mod_jk.so 二进制文件并将其放入“D:/apache24/modules”文件夹中
- 创建了“workers.properties”和“mod_jk.conf”文件并将这些文件复制到“D:/Tomcat_7.0/conf”文件夹中
-
在“D:/apache24/conf/extra”文件夹的“httpd.conf”文件末尾添加“Include D:/Tomcat_7.0/conf/mod_jk.conf”行
mod_jk.conf
LoadModule jk_module D:/apache24/modules/mod_jk.so JkWorkersFile D:/Tomcat_7.0/conf/workers.properties JkLogFile D:/Tomcat_7.0/logs/mod_jk.log JkLogLevel info JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat "%w %V %T" JkMount /ws ajp13 JkMount /ws/* ajp13workers.properties
worker.list=ajp13 worker.ajp13.type=ajp13 worker.ajp13.host=localhost worker.ajp13.port=8009 worker.ajp13.lbfactor=50 worker.ajp13.cachesize=10 worker.ajp13.cache_timeout=600 worker.ajp13.socket_keepalive=1 worker.ajp13.socket_timeout=300 -
因此我也在Tomcat7中修改了server.xml
-
现在,当我在命令提示符下运行以下命令时,出现如下所示的语法错误:
D:\apache24\bin> httpd -k installhttpd:D:/apache24/conf/extra/httpd.conf 的“包括 D:/Tomcat_7.0/conf/mod_jk.conf”行上的语法错误:无法加载 D:/apache24/modules/mod_jk.so进入服务器:%1 不是有效的 Win32 应用程序。
【问题讨论】:
-
错误信息非常清楚:您无法在 Windows 上加载 .so 模块。也不是关于编程和“尽快”寻求帮助是不礼貌的,除非你愿意为此付费。
-
你不是错的,windows中Apache HTTPD的mod_jk实际上是
.so扩展名。否则,请确保您已经下载了与您的 httpd 版本匹配的正确 mod_jk 版本。如果我没记错的话,可以从这个链接下载 Windows 中 HTTPD 2.4 的最新版本:archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/… -
我使用相同类型的配置,只是我的软件版本不同。我正在使用 Tomcat 9、Apache Httpd 2.4.33、mod_jk 1.2.40(用于 httpd 2.4.x)。但我仍然遇到同样的问题: httpd: Syntax error on line 534 of C:/Apache24/conf/httpd.conf: Cannot load C:\\Apache24\\modules\\mod_jk-1.2.43\\mod_jk.so进入服务器:%1 不是有效的 Win32 应用程序。