apache+mod_jk+mysql+tomcat搭建JSP论坛

本来这篇应该早就写的,只是最近太忙,一直没时间来记录,今天刚好休息,抽空来记录自己的学习心得,如有不对之处,敬请各位老大指点。。

系统:centos5.3

软件:apache-tomcat-5.5.20.tar.gz,httpd-2.2.4.tar.gz,jdk-1_5_0_11-linux-i586.rpm,mysql-5.1.30.tar.gz,tomcat-connectors-1.2.20-src.tar.gz,凌云论坛7.6,这些软件我提前已经下好并上传到服务器上了。。

下面我们开始安装啊,在安装之前,我们先要安装编译器,否则可能安装软件的时候会出现问题,

#yum install gcc
#yum install gcc-c++   
等上面2个自动安装好以后,我们开始安装数据库,也就是MySQL,我的文件时压缩文件,我们先解压
#tar xvzf mysql5.1.30.tar.gz
#cd mysql5.1.30
#./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/data/mysql --with-charset=utf8 --with-extra-charsets=all --with-plugins=innobase,partition   //这里具体的一些参数可以去网上查查啊
#make
#make install
这样mysql就安装好了,不过我们要设置哈,要不然启动不了的
#groupadd mysql
##useradd -d /mysql -s /sbin/nologin mysql
#cp support-files/my-medium.cnf /etc/my.cnf
#vi /etc/my.cnf       //注释掉skip-federated (前面插入#)
#/usr/local/mysql/bin/mysql_install_db --user=mysql
这样mysql就安装好了,我们直接启动它
#/usr/local/mysql/bin/mysqld_safe &
好了,到了这里我们开始安装apache,这基本上都是最简单的,没什么难度的,我们就按默认的安装就好,我就只列出命令,不做具体说明了
#tar xvf httpd-2.2.4.tar
#cd httpd-2.2.4
#./configure --prefix=/usr/local/apache --enable-so --with-mpm=worker
#make
#make install
下面安装java
#rpm –ivh jdk-1_5_0_11-linux-i586.rpm
#ln -s /usr/java/jdk1.5.0_11 /usr/java/jdk
Java安装好以后,我们要设置哈环境变量
#vi /etc/profile     //在文件最后面加上下面的语句
JAVA_HOME=/usr/java/jdk
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
保存退出以后JAVA我们也安装好了,下面安装tomcat,也是一样,安装都默认就可以
#tar xvzf apache-tomcat-5.5.20.tar.gz
#mv apache-tomcat-5.5.20 /usr/local/tomcat
tomcat安装好了,下面我们还得安装哈mod_jk,我把命令给大家,大家自己看啊,
#tar xvzf tomcat-connectors-1.2.20-src.tar.gz
#cd tomcat-connectors-1.2.20-src/native
#./configure -with-apxs=/usr/local/apache/bin/apxs
#make
#cp ./apache-2.0/mod_jk.so /usr/local/apache/modules/
相信上面没什么难度的,下面才开始我们的压轴大戏,首先我们要再/usr/local/apache/conf这个路径下创建2个文件,mod_jk.conf和workers.properties,然后我们进行编辑
#vi mod_jk.conf在里面写入以下语句
JkWorkersFile /usr/local/apache/conf/workers.properties

# Where to put jk logs
JkLogFile /usr/local/apache/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 /servlet/*  worker1
JkMount /*.wml worker1
JkMount /*.jsp worker1
JkMount /*.rob worker1
JkMount /*.xml worker1
JKMount /*.shtml worker1
JKMount /modules/news/FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector worker1
JKMount /modules/news/FCKeditor/editor/filemanager/upload/simpleuploader worker1
JkMount /rb_sip/* worker1
保存退出,同样的,我们也编辑workers.properties
#vi workers.properties 输入以下语句:
# Defining a worker named worker1 and of type ajp13
worker.list=worker1

# Set properties for worker1
worker.worker1.type=ajp13vi
worker.worker1.host=localhost     //这里的localhost记得修改为自己的IP地址
worker.worker1.port=8009
worker.worker1.lbfactor=50
#worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300
这样,该安装的都安装好了,接下来我们就要开始进行真正搭建论坛了。
论坛的程序包我已经解压缩上传到/web/jspbbs文件夹里了,具体的该要那些文件,大家可以去看论坛的图文安装说明,我就不重复了。
首先我们设置哈apache的主配置文件,主要修改以下几个地方:
1、DocumentRoot    “/web/jspbbs”
2、<Directory "/web/jspbbs">        //这些路径要改为你自己放论坛的路径
3、<Directory "/web/jspbbs/WEB-INF">
    Order deny,allow
    Deny from all
</Directory>      //这个是我的一个习惯,可有可无的,安全上来说,这个大家最好有。
4、index.html   这个后面加  index.jsp
5、找到含httpd-vhosts.conf的一行,把它前面的注释去掉。最后我们在最后面加2句话:
LoadModule jk_module modules/mod_jk.so
Include /usr/local/apache/conf/mod_jk.conf
然后我们保存退出,我们还要去修改哈虚拟主机的配置文件,这个配置文件/usr/local/apache/conf/extra/httpd-vhosts.conf我们简单修改哈,先看下默认文件,主要就是文件的最后一段。。
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /www/docs/dummy-host.example.com
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog logs/dummy-host.example.com-error_log
    CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /www/docs/dummy-host2.example.com
    ServerName dummy-host2.example.com
    ErrorLog logs/dummy-host2.example.com-error_log
    CustomLog logs/dummy-host2.example.com-access_log common
</VirtualHost>
大家看我修改好的,对比哈会更清楚:
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /web/jspbbs
    ServerName www.xxxxxx.com
    ErrorLog logs/xxxxxx.com-error_log
    CustomLog logs/xxxxxx.com-access_log common

 <Directory "/web/jspbbs/WEB-INF">
     Order deny,allow
     Deny from all
</Directory>
</VirtualHost>
看下,修改后保存退出就可以了。接下来我们去配置tomcat主配置文件server.xml文件,主要也是修改几个方面,我列出来大家看哈:
1、<!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009"
               maxThreads="10000" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="10000"
               connectionTimeout="20000" protocol="AJP/1.3" URIEncoding="UTF-8"/>
   这一段我把参数加全了,大家可以研究哈
2、<Host name=www.xxxxxx.com appBase="/web/"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
      <Context path="" docBase="/web/jspbbs" debug="0" allowLinking="true"  crossContext="true"/>
     最后一行是我添加上去的,具体什么意思,这个以后再具体给大家解释,这里只要按着修改保存就可以了。。
我们保存退出以后,apache跟tomcat就整合完毕,下面我们要导入数据库,
#./mysql -uroot -p    //输入密码以后我们就进入数据库了
mysql>create database lybbs;   //建立数据库
mysql>grant all on lybbs.* to mark@'ip addr' identified by 'xxx';   //创建账户并赋予lybbs数据库完全权限。
mysql>use lybbs;
mysql>source /web/lybbs_mysql.sql    //导入数据库
mysql>flush privileges;  
这样数据库就导入完成,我们稍微验证哈刚建立的数据库用户是否正常,正常那就说明成功了。接下来我们去修改论坛的数据库链接,转到/web/jspbbs/WEB-INF/classes/这个目录下,有一个db.properties 的文件,我们来修改哈
#vi db.properties找到这行:
dbUrl=jdbc:mysql://localhost/lybbs?useUnicode=true&characterEncoding=GBK
这里的localhost,是因为我建的账户只给了本地访问的权限,你自己建的如果有远程访问的也可以自己修改的。
dbUsername=mark
dbPassword=xxx
找到这两个地方把我们建的账号跟密码修改好,保存退出以后,我们检查哈所有服务有没有重启,如果确定mysqld,httpd,java如果都在运行,我们可以在客户机上试着访问我们的域名:www.xxxxxx.com,如果没有什么问题,那就可以正常登陆了额。。




 

你可能感兴趣的:(apache,tomcat,mysql,mod_jk,lybbs)