CentOS下整合Apache与Tomcat的一种方法
在这里我所用的配置如下:
- CentOS:7.4
- Apache:2.4.6
- Tomcat:8.5.30
- JDK:openjdk 1.8
- Tomcat connectors:1.2.43
整合前所需要做的准备工作包括:
- 安装JDK并配置环境变量
- 安装Apache并测试通过
- 安装Tomcat并测试通过
上述的安装配置过程不再赘述,下面从安装Tomcat connectors开始:
- 整合Apache与Tomcat有多种方法,这里选择比较方便的也是比较常用的做法:通过Tomcat connectors进行两者间的链接。下载Tomcat connectors,地址
- 安装。通常把下载好的安装包放在/usr/local目录下并解压,解压完成后可删除该安装包,进入安装包目录下的native目录下进行配置、编译并安装
[root@271d5811ce45 local]# tar -zxvf tomcat-connectors-1.2.43-src.tar.gz
[root@271d5811ce45 local]# cd tomcat-connectors-1.2.43-src/native/
[root@271d5811ce45 native]# ./configure --with-apxs=/usr/local/apache2/bin/apxs [root@271d5811ce45 native]# make [root@271d5811ce45 native]# make install - 上述步骤完成后在native/apache-2.0目录下会产生一个mod_jk.so文件,把这个文件复制到Apache目录下的modules目录下
[root@271d5811ce45 apache-2.0]# cp mod_jk.so /etc/httpd/modules/
- 在Apache的相关目录(我放在了/etc/httpd/conf)下创建mod_jk.conf和workers.properties文件
mod_jk.conf:
#LoadModule jk_module modules/mod_jk.so JkWorkersFile /etc/httpd/conf/workers.properties # Where to put jk logs JkLogFile /etc/httpd/logs/mod_jk.log # Set the jk log level [debug/error/info] JkLogLevel info # Select the log format JkLogStampFormat "[%a %b %d %H:%M:%S %Y]" # JkOptions indicate to send SSL KEY SIZE, JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories # JkRequestLogFormat set the request format JkRequestLogFormat "%w %V %T" JkMount /*WEB-INF worker1 JkMount /*.action worker1 JkMount /*.jsp worker1 JkMount /application/* worker1 JkMount /*.do worker1 JkMount /*.class worker1 JkMount /*/servlet/* worker1
workers.properities:
# Defining a worker named worker1 and of type ajp13 worker.list=worker1 # Set properties for worker1 worker.worker1.port=8009 worker.worker1.host=localhost worker.worker1.type=ajp13 worker.worker1.lbfactor=50 worker.worker1.cachesize=10 worker.worker1.cache_timeout=600 worker.worker1.socket_keepalive=1 worker.worker1.socket_timeout=300
然后在Apache的配置文件中导入这两个模块,在httpd.conf文件的末尾加入以下内容:
LoadModule jk_module modules/mod_jk.so Include /etc/httpd/conf/mod_jk.conf
- 至此完成了配置部分,重启Apache服务
[root@271d5811ce45 conf]# systemctl restart httpd
<html> <head><title>Hello</title></head> <body> <% java.util.Date currentTime = new java.util.Date(); %> <%=currentTime%> </body> </html>
访问该jsp页面:
该路径下的静态页面:
至此动态和静态页面成功实现分离。
请dalao不吝赐教。
标签:
Linux
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构