您的位置:首页 > 运维架构 > Tomcat

Apache与Tomcat安装配置手册

2007-07-06 09:54 591 查看
最新的操作系统Red Hat Linux release 8.0 (Psyche)和最新的应用软件,并重新设置Apache和Tomcat整合的配置.安装和配置还算比较顺利,所以就更新了这个文档,希望对大家会有所帮助!如果有什么错误的地方,也请大家指正!好了,不罗嗦了!

1.所需的软件包

  j2sdk-1_4_1_02-linux-i586
  Apache2.0.40 (Red Hat Linux)
  jakarta-tomcat-4.1.18
  jakarta-tomcat-connectors-4.1.18

2.软件包下载地址

  (1) Java J2SE1.4.1
    URL:http://java.sun.com/j2se/1.4.1/download.html
  (2) Apache2.0.40
    URL:http://httpd.apache.org
  (3) Tomcat 4.1.18
    URL:http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.18/bin/jakarta-tomcat-4.1.18.tar.gz
  (4) Tomcat connectors-4.1.18
    URL:http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.18/src/jakarta-tomcat-connectors-4.1.18-src.tar.gz

3.软件安装

  (1) 解开压缩包
    使用gunzip或tar或rpm解开下载的软件包,按照默认方式安装既可
  (2) 目录的处理
    J2SDK安装目录: /usr/j2sdk1.4.1_02
    Apache安装目录: /etc/httpd
             /usr/lib/apache
             /var/www
    Jakarta-Tomcat安装目录: /opt/jakarta-tomcat-4.1.18
    Jakarta-Tomcat-connectors安装目录: /opt/jakarta-tomcat-connectors-4.1.18-src

4.环境变量设置

  JAVA_HOME=/usr/j2sdk1.4.1_02
  CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
  CATALINA_BASE=/opt/jakarta-tomcat-4.1.18
  CATALINA_HOME=/opt/jakarta-tomcat-4.1.18
  PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

5.特殊安装

  (1) 编译Jakarta-Tomcat-connectors
    cd /opt/jakarta-tomcat-connectors-4.1.18-src/webapp ## 进入指定的目录
    ./support/buildconf.sh ## 生成编译配置文件
    ./configure --with-apxs ## 生成Makefile编译文件
    make ## 编译生成mod_webapp.so
    注释: 生成的mod_webapp.so文件在apache-2.0目录中
  (2) 把apache-2.0目录中的mod_webapp.so文件复制到目录/usr/lib/httpd/modules
    并检查文件/usr/lib/httpd/modules/mod_webapp.so的属性,应与其它Modules文件
    属性一致,如果不相同,则使用chmod chgrp chown来修改

6.独立环境的测试

  (1) 测试Java的运行状况,如下命令:
    java -version
    javac -version
    看到版本号则表示JDK安装成功
  (2) 测试Apache的运行状况,如下命令:
    /etc/init.d/httpd restart ## 重新启动Apache Server
    使用任意一浏览器,输入服务器地址后回车,应该可以看到Apache的默认主页
  (3) 测试Jakarta-Tomcat的运行状况,如下命令:
    cd $CATALINA_HOME
    cd bin
    ./startup.sh ## 启动jakarta-tomcat-4.1.18服务
    使用任意一浏览器,输入服务器地址和端口号8080后回车,应该可以看到jakarta-tomcat-4.1.18的默认主页
    例如: http://192.192.192.1:8080     ./shutdown.sh ## 关闭jakarta-tomcat-4.0.1服务

7.整合安装设置

  (1) 修改/etc/httpd/conf/httpd.conf文件
    在# Dynamic Shared Object (DSO) Support之后,添加如下内容
    LoadModule webapp_module modules/mod_webapp.so
  (2) 测试配置和Modules,执行以下命令
    apachectl configtest
    如果出现Syntax OK,则证明Module安装和配置成功了!
  3) 修改/etc/httpd/conf/httpd.conf文件
    在文件尾部添加如下内容
    WebAppConnection warpConnection warp localhost:8008
    WebAppDeploy examples warpConnection /examples/
  4) 再次测试配置,执行以下命令
    apachectl configtest
    如果出现Syntax OK,则证明安装成功!
    如果出现以下错误信息
    Syntax error on line 1038 of /etc/httpd/conf/httpd.conf:
    Invalid virtual host name
    则修改httpd.conf文件,找到#ServerName所在的行,并在其下面加入如下内容即可
    ServerName localhost:8008 # 制定服务器的名称和端口
  5) 检查$CATALINA_HOME/conf/server.xml文件中相关的配置,默认情况下的
    相关的信息是被注释掉了,所以需要删掉注释的语句,这样Tomcat在启动的时候才会初始化
    相关的内容并开启8008端口!

8.整合测试

  重新启动所有服务
    $CATALINA_HOME/bin/shutdown.sh
    $CATALINA_HOME/bin/startup.sh
    /etc/init.d/httpd restart
  在浏览器中输入如下地址
    http://服务器IP/examples/jsp/index.html,如果能够显示正常的网页,则安装成功
  在浏览器中输入如下地址
    http://服务器IP/examples/jsp/jsptoserv/jsptoservlet.jsp如果能够显示正常的网页和时间,则jsp和Servlet安装成功

9.祝你好运,如还有问题,请联系我!

  作 者: 疯傻
  邮 件: madfool@163.net
  主 页: http://www.avaw.com       http://www.binary.com.cn   此文档严格遵循GPL协议,转帖请保持此文档的完整性!
Tomcat 配置集锦

1.下载

http://www.eu.apache.org/dist/jakarta/tomcat-5/
这里注意,在jakarta-tomcat-5.0.28.exe以前是有默认的admin模块,在jakarta-tomcat-5.5.9.exe则没有安装默认的admin模块,这时

http://127.0.0.1:8080/admin打开时则会出现
Tomcat's administration web application is no longer installed by default. Download and install the "admin" package to use it.
因此我们现在需要下载"admin"package 包
把jakarta-tomcat-5.5.x.zip 与 jakarta-tomcat-5.5.x-compat.zip 与 jakarta-tomcat-5.5.x-admin.zip
三个文件解压在同一个目录中
(如果使用jdk1.4,才需要compat.zip用jdk1.5就可以免了这个。)

2.修改jakarta-tomcat-5.5.x/conf/tomcat-users.xml.
添加管理员账号lizongbo,密码为lizongbopass.
新xml如下:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="lizongbo" password="lizongbopass" roles="admin,manager"/>
</tomcat-users>

有时在%CATALINA_HOME%/server/webapps/admin/WEB-INF/web.xml里面也要做些修改

<!-- Security is active on entire directory -->
<security-constraint>
<display-name>Tomcat Server Configuration Security Constraint</display-name>
<web-resource-collection>
<web-resource-name>Protected Area</web-resource-name>
<!-- Define the context-relative URL(s) to be protected -->
<url-pattern>*.jsp</url-pattern>
<url-pattern>*.do</url-pattern>
<url-pattern>*.html</url-pattern>
</web-resource-collection>
<auth-constraint>
<!-- Anyone with one of the listed roles may access this area -->
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>

<!-- Login configuration uses form-based authentication -->
<login-config>
<auth-method>FORM</auth-method>
<realm-name>Tomcat Server Configuration Form-Based Authentication Area</realm-name>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/error.jsp</form-error-page>
</form-login-config>
</login-config>

<!-- Security roles referenced by this web application -->
<security-role>
<description>
The role that is required to log in to the Administration Application
</description>
<role-name>admin</role-name>
</security-role>
无论是 Authetication ( 身份验证

还是 Authorization ( 权限管控

都只有设置相关的 admin ROLE, 当你想要新增或修改相关的 AA, 就必须修改这一个文件, 来符合你的环境.
3.修改jakarta-tomcat-5.5.x/conf/server.xml来解决编码问题。
(给Connector 添加URIEncoding参数,参考

http://blog.csdn.net/darkxie/archive/2004/10/25/TOMCATAPP.aspx)
(可以设置成GB18030)
<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="200"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"
compression="on" compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml"/>

<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" URIEncoding="GBK"/>

4.启用支持gzip压缩.
(

http://www.linuxaid.com.cn/forum/showdoc.jsp?l=1&i=81169)
添加下列属性
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml"

5.设置虚拟主机。
在jakarta-tomcat-5.5.x/下建立文件夹vhost/www.mydomain.com。
然后修改jakarta-tomcat-5.5.x/conf/server.xml

<Engine defaultHost="localhost" name="Catalina">
<Host appBase="vhost/www.mydomain.com" name="

http://www.mydomain.com/">
</Host>
<Host appBase="webapps" name="localhost">
</Host>
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
</Engine>

6.添加数据库驱动,更新mail.jar和actiovation.jar
复制mysql-connector-java-3.0.16-ga-bin.jar,pg74.215.jdbc3.jar到 jakarta-tomcat-5.5.x/common/lib/
还有javamail 1.3.2的mail.jar,jaf-1_0_2的 activation.jar
msSQl 2000 JDBC sp3,msbase.jar,msutil,jar,mssqlserver.jar

7.配置SSL
参考

http://jakarta.apache.org/tomcat/tomcat-5.5-doc/ssl-howto.html
D:/j2sdk1.4.2_06/bin>%JAVA_HOME%/bin/keytool -genkey -alias tomcat -keyalg RSA
输入keystore密码: lizongbossl
您的名字与姓氏是什么?
[tomcat5.5.x]: tomcat5.5.x
您的组织单位名称是什么?
[jakarta]: jakarta
您的组织名称是什么?
[apache]: apache
您所在的城市或区域名称是什么?
[hzcity]: hzcity
您所在的州或省份名称是什么?
[gdp]: gdp
该单位的两字母国家代码是什么
[CN]: CN
CN=tomcat5.5.x, OU=jakarta, O=apache, L=hzcity, ST=gdp, C=CN 正确吗?
[否]: y

输入<tomcat>的主密码
(如果和 keystore 密码相同,按回车):

(必须密码一致,因此直接回车)
然后再把userhome(例如:C:/Documents and Settings/lizongbo/)下的.keystore复制到
tomcat的conf/目录下。
(例如:D:/jakarta-tomcat-5.5.x/conf/.keystore


配置jakarta-tomcat-5.5.x/conf/server.xml
加上
<Connector port="8443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="conf/.keystore"
keystorePass="lizongbossl"> <!--与先前设置的密码一致-->
</Connector>
8.禁止文件目录列表,
修改jakarta-tomcat-5.5.x/conf/web.xml,把listing设置为false

<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

9.指定了自己的javaEncoding
(参考

http://gceclub.sun.com.cn/staticcontent/html/sunone/app7/app7-dg-webapp/ch6/ch6-4.html


<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>javaEncoding</param-name>
<param-value>GB18030</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
10.添加rar,iso等的mime-type映射
避免在浏览器里直接打开。
<mime-mapping>
<extension>mht</extension>
<mime-type>text/x-mht</mime-type>
</mime-mapping>
<mime-mapping>
<extension>rar</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>iso</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>ape</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>rmvb</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>
<mime-mapping>
<extension>ico</extension>
<mime-type>image/x-icon</mime-type>
</mime-mapping>
10.1对html静态页面设置编码
<!-- 修改下面两行以支持静态超文本的自动编码
-->
<mime-mapping>
<extension>htm</extension>
<mime-type>text/html;charset=gb2312</mime-type>
</mime-mapping>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html;charset=gb2312</mime-type>
</mime-mapping>
</web-app>

11.添加welcome-file-list,并调整顺序。
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: