Java 响应中的Spring和mod_jk jsp源代码
我有spring控制器,还有apache+mod_jk+tomcat。因此,在响应中向我的控制器发出请求后,我得到了jsp源代码 mod_jk配置:Java 响应中的Spring和mod_jk jsp源代码,java,spring,apache,tomcat,mod-jk,Java,Spring,Apache,Tomcat,Mod Jk,我有spring控制器,还有apache+mod_jk+tomcat。因此,在响应中向我的控制器发出请求后,我得到了jsp源代码 mod_jk配置: <VirtualHost <some ip>:8000> ServerName <host> ServerAlias <alias> DocumentRoot <path> JkMountCopy On </Virtu
<VirtualHost <some ip>:8000>
ServerName <host>
ServerAlias <alias>
DocumentRoot <path>
JkMountCopy On
</VirtualHost>
JkWorkersFile <path>/workers.properties
JkMount /app* worker1
我对apache成功接收请求的理解=>mod_jk将其重定向到spring控制器。
问题是接下来会发生什么?spring是否将响应体转换为jsp页面,并将其转发给apache?如何解决此问题?这是一个工作配置,也许您可以找到您的配置中缺少的任何内容:
worker.list=stats,node1
worker.node1.type=ajp13
worker.node1.host=localhost
worker.node1.port=8009
#status information (optional)
worker.stats.type=status
JkMount /myapp node1
JkMount /myapp/* node1
尝试直接从tomcat打开此页面,而不使用mod_jk代理。它有用吗?我怀疑。@LeosLiterak在本地主机上验证了jsp和controller都工作正常。嗯,modjk只是一个代理,它不会影响处理。奇怪的是,该文件是通过Apache Web服务器而不是Tomcat提供的。您的mod_jk配置不正确。请发布。@Stefoan我添加了config,没有结果,我调试了mod_jk,并在日志中看到tomcat返回jsp源代码。问题是服务器上的tomcat(本地it工作)有什么问题,因为我们的it部门配置了tomcat,而不是我。一般来说,在apache+tomcat上是否有可能取消jsp的执行?如果jsp servlet被禁用或映射错误,则是。请参阅[tomcat folder]/conf/web.xml,应该是第225行和第360行,或者搜索“org.apache.jasper”。您是对的,谢谢!原因是jsp编译器被禁用,请参见tomcat\conf\web.xml中的org.apache.jasper.servlet.JspServlet。It团队表示这是生产的推荐选项)
worker.list=stats,node1
worker.node1.type=ajp13
worker.node1.host=localhost
worker.node1.port=8009
#status information (optional)
worker.stats.type=status
JkMount /myapp node1
JkMount /myapp/* node1