我的申请基于PHP
。现在我想整合一个用JSP
编写的网络记者。所以,我有一个Apache HTTP Server
和一个用PHP编写的应用程序。我甚至安装了Tomcat
来提供JSP
个文件,它在8080端口运行良好。我也得到了mod_jk.so并在LoadModule jk_module modules/mod_jk.so
文件中添加了一行httpd.conf
,但我仍无法从我的应用程序文件夹(端口80)运行JSP
个文件。我想,应该对httpd.conf
文件进行额外的调整,但我不知道应该做些什么。
修改的
我的workers.properties
看起来与此完全相同
JkWorkerProperty worker.list=ajp13w
JkWorkerProperty worker.ajp13w.type=ajp13
JkWorkerProperty worker.ajp13w.host=localhost
JkWorkerProperty worker.ajp13w.port=8009
我的uriworkermap.properties
看起来像这样
/jsp/*=ajp13w
其中jsp
是htdocs中的文件夹,包含jsp文件
最后,我的httpd.conf
现在包含
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule jk_module modules/mod_jk.so
#AddModule mod_jk.c
#JkWorkersFile C:/Program Files/Apache Software Foundation/Tomcat 6.0/conf/workers.properties
#JkMountFile C:/Program Files/Apache Software Foundation/Tomcat 6.0/conf/uriworkermap.properties
JkLogFile C:/Apache/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
每条注释行都无法启动服务器。
修改
我安装了较新版本的Tomcat - Tomcat 8.0,但问题仍未解决。
修改
通过此链接apache.org判断,可以通过更改server.xml
(tomcat)和httpd.conf(关于虚拟主机)的一些更改来解决问题。但是,就像这个世界上的所有,本文没有提供任何具体的例子。
修改
我向前迈了一步。导致无法运行服务器的最愚蠢的错误是引号。因此httpd.conf
- JkWorkersFile C:/Program Files/Apache Software Foundation/Tomcat 8.0/conf/workers.properties
中的这一行给了我一个错误,但经过三个小时的斗争后,结果却是JkWorkersFile "C:/Program Files/Apache Software Foundation/Tomcat 8.0/conf/workers.properties"
。所以,现在它运行了。但是,当我转到localhost/jsp/index.jsp
时,我现在看到 Apache Tomcat error report
:HTTP Status 404 - /jsp/index.jsp
。这似乎是最后一个错误,但我仍然不知道如何解决它。
修改
现在我看到它有效。虽然,我得到了一个意外的行为。我以为我可以将JSP
文件放在htdocs文件夹中,但事实证明,它们应放在tomcat中。
答案 0 :(得分:1)
用于最小化设置。
workers.properties文件示例:
# Minimal jk configuration
JkWorkerProperty worker.list=ajp13w
JkWorkerProperty worker.ajp13w.type=ajp13
JkWorkerProperty worker.ajp13w.host=localhost
JkWorkerProperty worker.ajp13w.port=8009
8009是mod_jk在将请求转发给Tomcat时用于在HTTPD和Tomcat之间进行通信的默认端口。如果你在这里更改它,你也必须在Tomcat的server.xml中更改它。
uriworkermap.properties文件示例:
/my_tomcat_app_to_expose_to_httpd/*=ajp13w
*有一个文件扩展名过滤器。 *对于所有文件,* .jsp仅用于jsp文件等。
此处列出的任何应用都将通过HTTPD提供。
在httpd.conf中你需要:
LoadModule jk_module libexec/mod_jk.so
AddModule mod_jk.c
JkWorkersFile /config_location/workers.properties
JkMountFile /config_location/uriworkermap.properties
JkLogFile /log_location/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "