问题:当从apache 2.2.14换成apache 2.2.3时,已配好的jsp环境无法正常运行,mod_jk.so不能使用
重新用yum 安装了httpd-devel套件生成了apxs后,重新对tomcat-connector源程序进行make clean,.configurage,make,make install后用新生成的mod_jk.so即可正常。当系统增加虚拟主机后,httpd.conf配置文件也要进行相应改变。下面有详细说明。
1.下载解压 Apache安装至 /usr/local/apache
2.下载解压tomcat安装至 /usr/local/tomcat
3.下载JK-1.2.28源文件(Apache Tomcat Connectors ) 在Tomcat官网界面上有相应连接
4. 编译JK-1.2.28
进入native目录
./configure -with-apxs=/home2/local/apache/bin/apxs
make
cp ./apache-2.0/mod_jk.so /usr/local/apache/modules
5.修改apache配置文件httpd.conf
#增加index.jsp
<IfModule dir_module>
DirectoryIndex index.html index.php index.jsp
</IfModule>
LoadModule jk_module modules/mod_jk.so
JkWorkersFile /usr/local/apache/conf/workers.properties
JkLogFile /usr/local/apache/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkMount /*.jsp worker1
JkMount /*.do worker1 // 此项为配置servlet, 在web.xml中可自由配置路径如:<url-pattern>/servlet/login</url-pattern>
// 此时不宜配置成/*, 否则将会屏蔽掉php等其它脚本解析。
# 以下两项可以省略不要
#JkMount /servlet/* worker1
#JkMount /*.do* worker1
如果存在虚拟主机,需要进行单独配置,如下所示:
<VirtualHost *:80>
DocumentRoot /var/www/html/
ServerName www.example.com
ServerAlias example.com
<Location "/*.jsp">
JkMount worker1
</Location>
</VirtualHost>
6. 在apache/conf中增加workers.properties
# Define 1 real worker using ajp13
worker.list=worker1
# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
7. 修改Tomcat/conf中的server.xml配置文件,在host中增加路径映射
<Context path="" docBase="/usr/local/apache/htdocs" debug="0" reloadable="true" crossContext="true" />
8.配置tomcat为服务
编写tomcat脚本,chkconfig --list 显示已有服务,chkconfig --add 添加服务
9.自定义访问找不到相应页面时,tomcat的404错误。400错误设置方法相同
编辑tomcat安装目录中conf中的web.xml在最后加入
<error-page>
<error-code>404</error-code>
<location>/404.html</location>
</error-page>
posted on 2010-01-13 18:32
Documents 阅读(571)
评论(0) 编辑 收藏 所属分类:
Java 、
Tomcat 、
Something 、
Linux 、
lamp 、
CentOS