Linux系统上JSP环境搭建(apache与tomcat整合)详细说明
Linux系统上JSP环境搭建(apache与tomcat整合)详细说明因为系统已经配置好PHP环境,web是由apache提供的,所以今天就在PHP基础上,搭建JSP环境,并让他们协同工作。
本次操作环境说明:PHP环境是用yum来安装的。也就是说是RPM包安装的。系统是RHEL6.1X64位系统
第一步,安装java环境
注意:如果说,你的环境有JAVA开始的话,要下载JDK,如果只是简单的JAVA环境,只需要安装JRE就OK了。注(此处无大小写区分)。也就是说,JDK包含了JRE的全部内容。
jre最新版本下载地址
安装方法
# chmod +x jre-6u25-linux-x64.bin
# ./jre-6u25-linux-x64.bin
# mv jre1.6.0_25/* /jdk/# vim /etc/profile
在最后加入下面语句
#java#
JAVA_HOME=/jdk
PATH=$PATH:$JAVA_HOME/bin
# source /etc/profile查看JAVA是不是安装成功了
# java -version
java version "1.6.0_25"
Java(TM) SE Runtime Environment (build 1.6.0_25-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.0-b11, mixed mode)恭喜你,安装成功!
第二步,安装apache-tomcat
这个是jsp服务提供程序
各个版本的下载地址如下。注意,我们下载的是二进制的文件,非源码文件,无需编译,直接可以使用
如果想用源码安装,请参考源码编译安装tomcat教程
5.5下载地址
6.0下载地址
7.0下载地址
收下是以5.5的为例,6和7的只是lib目录位置不同而已
# tar zxvf apache-tomcat-5.5.33.tar.gz
# mv apache-tomcat-5.5.33 /tomcat现在可以启动tomcat来查看了
进入tomcat的安装目录,里面有个bin
运行里面的
startup.sh #启动
shutdown.sh #关闭
如果出现下面的错误提示的话,
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program请把JAVA的环境变量加上,也就是打开startup.sh 和 shutdown.sh 在第二行加入下面的内容
export JAVA_HOME=/jdk然后重新启动
查看端口的情况
# netstat -ntlp |grep 8080
tcp 0 0 :::8080 :::* LISTEN 4264/java然后用http://IP:8080/就能看到那个TOMCAT的界面了。
第三步,让JSP可以和MYSQL通信
安装jdbc驱动(Connector/J 5.1.17) mysql-connector-java是JSP和MYSQL数据库连接的必需工具
下载地址
或者是直接下载mysql-connector-java-5.1.17
# unzip mysql-connector-java-5.1.17.zip
# cp mysql-connector-java-5.1.17/mysql-connector-java-5.1.17-bin.jar /tomcat/common/lib/下面是进行测试与数据库的连接情况
1、修改MYSQL的配置文件,确保是UTF8编码
# vim /etc/my.cnf:
在相应的位置增加下面的内容,如果没有就加入
default-character-set=utf8
default-character-set=utf8然后重新启动MYSQLD服务
随后就是连接登陆查看
# mysql -uroot -p0123456789
mysql> show variables like '%char%';
mysql> show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)2、创建测试数据库
确认上面是UFT8后,我们就来创建个测试数据库。注意您的终端也要是UTF8编码啊,否则中文会出现乱码!
mysql> create database tomcat;
mysql> use tomcat;
mysql> create table tt(id int, name varchar(128)) character set utf8 collate utf8_general_ci;
mysql> insert into tt values(1,'建表加: character set utf8 collate utf8_general_ci');
mysql> insert into tt values(2,'插入数据: mysql --default-character-set=utf8');
mysql> insert into tt values(3,'jsp 页面的编码设为utf-8');
mysql> grant all on tomcat.* to tomcat@localhost identified by 'tomcat';
mysql> exit3、写测试主页程序
在/tomcat/webapps/ROOT/这个目录下,创建一个JSP测试文件如jdbc.jsp内容如下,注意,请务必不要我错误的内容。如果你复制此段内容的话,最后两行的开头会多出个%,注意把他删除了。
# vim /tomcat/webapps/ROOT/jdbc.jsp
<%@ page contentType="text/html;charset=utf-8"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/tomcat?user=tomcat&password=tomcat&useUnicode=true&characterEncoding=utf-8";
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from tt";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
step:<%=rs.getString(1)%>
context:<%=rs.getString(2)%><br><br>
<%}%>
<%out.print("Congratulations!!! JSP connect MYSQL IS OK!!");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>重新启动你的tomcat,在浏览器中输入http://IP:8080/jdbc.jsp。如果看到的是
step:1 context:建表加: character set utf8 collate utf8_general_ci
step:2 context:插入数据: mysql --default-character-set=utf8
step:3 context:jsp 页面的编码设为utf-8
Congratulations!!! JSP connect MYSQL IS OK!!这样的内容,那么恭喜您,数据库连接成功了。
第四步,tomcat与apache整合
tomcat + apache的结合工具JK 1.2.32 Source Release tar.gz
Tomcat Connectors (mod_jk) Downloads
http://tomcat.apache.org/download-connectors.cgi
因为此程序依赖apache的apax所以,我们需要安装apache的devel包。如果你是源码编译安装的apache的话,就不用安装了
# yum install apache-devel
# which apxs
/usr/sbin/apxs
# tar zxvf tomcat-connectors-1.2.32-src.tar.gz
# cd tomcat-connectors-1.2.32-src/native/
# ./configure --with-apxs=/usr/sbin/apxs
# make
# make install这时候会复制个文件到
/usr/lib64/httpd/modules/mod_jk.so
注意,这里我们不用把LoadModule jk_module modules/mod_jk.so放到httpd.conf文件中,因为下面的配置文件会增加此项内容
编辑文件
/etc/httpd/conf.d/jk.conf
内容如下,
LoadModule jk_module modules/mod_jk.so
JkWorkersFile /etc/httpd/conf.d/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMount /* loadbalancer
#apache will serve the static picture.
JkUnMount /*.jpg loadbalancer
JkUnMount /*.gif loadbalancer
JkUnMount /*.swf loadbalancer
JkUnMount /*.bmp loadbalance
JkUnMount /*.png loadbalancer此配置文件可以在tomcat-connectors-1.2.32-src/conf/httpd-jk.conf 中找到,只是稍加修改
编辑/etc/httpd/conf.d/workers.properties内容如下
worker.list=loadbalancer
worker.loadbalancer.type=ajp13
worker.loadbalancer.host=localhost
worker.loadbalancer.port=8009
worker.loadbalancer.lbfactor=1
worker.loadbalancer.socket_keepalive=1此配置文件可以在tomcat-connectors-1.2.32-src/conf/workers.properties中找到,稍加修改
重新启动tomcat和hhttpd
这时候,我们可以直接用http://IP/jdbc.jsp来访问了,不再用8080端口了,这时候就说明tomcat与httpd结合成功了。
第五步,修改工作目录
修改httpd.conf或者是tomcat的server.xml文件,使其工作目录在一起,关于httpd.conf的这个就不说了,我主要来讲一下关于tomcat的修改方法
打开tomcat/conf/server.xml
在host段中加入下面的内容
<Context path="" docBase="/var/www/html" debug="0" reloadable="true" crossContext="true"/>然后重新启动tomcat
这时候,tomcat的根目录就到/var/www/html下了。
最后感谢我们群中的KADE,是他提供了相应的原文件,我在他的基础上,加以重新撰写!
KADE的源文件下载地址如下
谢谢分享
页:
[1]