设为首页 收藏本站
查看: 933|回复: 0

[经验分享] Apache整合Tomcat连接数据库

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-16 09:49:42 | 显示全部楼层 |阅读模式
1.Apache与Tomcat比较联系

apache支持静态页,tomcat支持动态的,比如servlet等。

一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由tomcat来处理的。

apache可以支持php\cgi\perl,但是要使用java的话,你需要tomcat在apache后台支撑,将java请求由apache转发给tomcat处理。

apache是web服务器,Tomcat是应用(java)服务器,它只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行。

2.整合的好处是:
如果客户端请求的是静态页面,则只需要Apache服务器响应请求
如果客户端请求动态页面,则是Tomcat服务器响应请求
因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销
     先安装LAMP环境·······略
实现环境:
Linux:Centos6.5
Apache:httpd-2.2.16.tar.gz
Cmake:cmake-2.8.10.2.tar.gz
Mylsq:mysql-5.6.10.tar.gz
Php:php-5.3.28.tar.gz
所用到的软件:

Tomcat:apache-tomcat-7.0.64.tar.gz
Tomcat连接器:tomcat-connectors-1.2.32-src.tar.gz
JDK:jdk-7u67-linux-x64.tar.gz
Tomcat连接数据库:mysql-connector-java 5.1.17
1.安装JDK
·解压并移动JDK
1
2
tar zxvf  jdk-8u31-linux-i586.tar.gz   
mv jdk1.8.0_31   /usr/local/jdk



·修改环境变量

vim /etc/profile.d/java.sh
1
2
3
4
5
JAVA_HOME=/usr/local/jdk      
JAVA_BIN=/usr/local/jdk/bin
JRE_HOME=/usr/local/jdk/jre
PATH=$PATH:/usr/local/jdk/bin:/usr/local/jdk/jre/bin
CLASSPATH=/usr/local/jdk/jre/lib:/usr/local/jdk/lib:/usr/local/jdk/jre/lib/charsets.jar



·初始化
1
. /etc/profile.d/java.sh



·测试是否配置成功
1
java  -version



2.安装Tomcat
·解压并移动
1
2
tar zxvf apache-tomcat-7.0.57.tar.gz              
mv apache-tomcat-7.0.57  /usr/local/tomcat



·启动Tomcat
1
2
3
cd /usr/local/tomcat/bin
./shutdown.sh     #停止tomcat
./startup.sh      #启动tomcat



·测试tomcat
网站输入ip:8080 出现tomcat默认页面
3.整合tomcat和Apache         #需要借助apache-tomcat的连接器

·解压tomcat连接器
1
tar zxvf tomcat-connectors-1.2.32-src.tar.gz



·指定Apache的apxs路径
1
2
3
cd tomcat-connectors-1.2.32-src/native
./configure --with-apxs=/usr/local/apache2/bin/apxs
make



·添加mod_jk模块
1
2
3
4
5
tar zxvf jakarta-tomcat-connectors-1.2.15-src.tar.gz
cd jakarta-tomcat-connectors-1.2.15-src
./configure --with-apxs=/usr/local/apache2/bin/apxs
make
cp ./apache-2.0/mod_jk.so /usr/local/apache2/modules/



·Apache整合tomcat
1
2
3
4
5
6
vim  /usr/local/apache2/conf/httpd.conf

在DirectoryIndex上添加nindex.jsp
<IfModule dir_module>
     DirectoryIndex index.jsp index.php index.html
</IfModule>



·增加关于加载mod_jk的语句
wKiom1X3jQOwmtLMAACzR6khj1g844.jpg
·在/usr/local/apache2/conf下建立配置文件mod_jk.conf
指出mod_jk模块工作所需要的工作文件workers.properties的位置, jk日志放在哪里, jk日志级别, 选择日志格式, JkOptions送SSL关键尺寸显示, JkRequestLogFormat设置要求的格式 , 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
vim /usr/local/apache2/conf/mod_jk.conf

JkWorkersFile /usr/local/apache2/conf/workers.properties

    ###### Where to put jk logs
    JkLogFile /usr/local/apache2/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"

    ###### 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/* worker1
    JkMount /*.jsp worker1
    JkMount /*.do worker1



·在/usr/local/apache2/conf下建立配置文件workers.properties
定义一个工人叫worker1 ajp13和类型
1
2
3
4
5
6
7
8
9
10
11
vim /usr/local/apache2/conf/workers.properties

worker.list=worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.prot=8009
worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300



·找到tomcat配置文件路径,编辑server.xml
1
vim /usr/local/tomcat/conf/server.xml



·在<host>段加入
1
2
<Context path="" docBase="/usr/local/apache2/htdocs" debug="0" reloadable="ture"
crossContext="ture"/>



·编辑一个index.jsp的网页
1
2
3
4
5
vim /usr/local/apache2/htdocs/index.jsp

<%
    out.println("hello tomcat ");
  %>



·重启tomcat和apache
1
2
3
4
/usr/local/apache2/bin/apachectl  restart
cd /usr/local/tomcat/bin
./shutdown.sh
./startup.sh



·整合完成,测试
输入ip地址,出现hello tomcat
4.连接数据库
jsp使用mysql-connector-java 5.1.17连接mysql
·解压zip包
1
unzip mysql-connector-java 5.1.17.zip



·把mysql-connector-java 5.1.17-bin.jar 放到tomcat目录下的lib目录
1
cp mysql-connector-java-5.1.17-bin.jar /usr/local/tomcat/lib/



·编写一个测试页面 test_mysql.jsp,如果页面显示OK就标明可以连接到数据库
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
vim /usr/local/apache2/htdocs/test_mysql.jsp

<%@ page language="java" %>
    <%@ page import="com.mysql.jdbc.Driver" %>
    <%@ page import="java.sql.*" %>
    <%
    String driverName="com.mysql.jdbc.Driver";
    String userName="root";
    String userPasswd="123";
    String dbName="test";
    String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    try
    {
            Connection connection=DriverManager.getConnection(url);
            out.println(" O K !");
            connection.close();
    }
    catch( Exception e )
    {
            out.println( "connent mysql error:" + e );
    }
    %>



·重启tomact和Apache,属于ip/test_mysql.jsp 出现OK 则连接成功


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-114307-1-1.html 上篇帖子: Apache整合Tomcat连接数据库 下篇帖子: Apache 403 Forbidden
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表