linux(centos) java+apache+tomcat配置

本文详细介绍了在 Linux CentOS 环境下安装 JDK、Apache、Tomcat 和 mod_jk 的步骤,并配置 mod_jk.conf 和 workers.properties 文件,最终实现 Web 应用的部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇博文是从别处转来的,原文地址http://zhoualine.iteye.com/blog/1765521

 

    去年文章讲解过windowx下apache+tomcat 的配置, 总体来讲 比较简单的,那么如果你熟悉linux的话,配置基本也是一致。下面一步一步来实现linux(centos)下安装jdk、apache、tomcat、mod_jk 的过程。

 

1 安装jdk

2 安装apache

3 安装tomcat

4 编译生成mod_jk

5 配置 mod_jk.conf和workers.properties

6 apache目录说明

7 tomcat目录说明

 

1 安装jdk

1. 安装jdk 从本地上传到linux 或者 wget下载
[root@www java]#chmod 755 jdk-1_5_0_22-linux-i586-rpm.bin
[root@www java]#./jdk-1_5_0_22-linux-i586-rpm.bin
Extracting...
UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (Zip-Bugs@lists.wku.edu).
  inflating: jdk-1_5_0_22-linux-i586.rpm
Preparing...                ########################################### [100%]
   1:jdk                    ########################################### [100%]
done.
2. 修改  /etc/profile  默jdk认安装在 /usr/java 目录
[root@www java]# vi /etc/profile 
在末尾追加以下信息 
JAVA_HOME=/usr/ java/jdk1.5.0_22/ 
JRE_HOME=/usr/  java/jdk1.5.0_22/jre/ 
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar 
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH  
 
[root@www java]#source /etc/profile
3.测试  
 
[root@www java]# java -version           

 

2 安装apache

1. 下载apache2文件

[root@www java]# wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.2.23.tar.gz

[root@www java]# rpm -qa | grep httpd #检查以前安装版本

[root@www java]# rpm -e httpd   #卸载系统默认安装版

2. 解压下载的apache2包
[root@www java]# tar -zvxf  httpd-2.2.23.tar.gz
 #安装apache
[root@www java]# mv httpd-2.2.23  /usr/local/ apache2
[root@www httpd-2.2.23 ]# cd /usr/local/apache2/ httpd-2.2.23

3. 安装apache至/usr/local/apache 并配置apache支持dso方式 
[root@www httpd-2.2.23 ]# ./configure --prefix=/usr/local/apache2 --enable-module=so
[root@www
 httpd-2.2.23 ]# make
[root@www
 httpd-2.2.23 ]# make install 
4. 启动Apache

[root@host apache2 ]# bin/apache1 start

 
3 安装tomcat
1.下载tomcat包
[root@www java]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-6/v6.0.36/bin/apache-tomcat-6.0.36.tar.gz
2. 解压包
[root@www java]# tar -zxvf apache-tomcat-6.0.36.tar.gz
[root@www java]# mv apache-tomcat-6.0.36/* /usr/local/tomcat
[root@www java]# vi /usr/local/tomcat/bin/catalina.sh 
加入一行:
 
JAVA_HOME=/usr/java
  /jdk1.5.0_22
# /usr/local/tomcat/bin/startup.sh
 
编译生成mod_ jk

[root@www java]# wget http://archive.apache.org/dist/jakarta/tomcat-connectors/jk/source/jk-1.2.15/jakarta-tomcat-connectors-1.2.15-src.tar.gz

 

[root@www java]# tar xzvf jakarta-tomcat-connectors-1.2.15-src.tar.gz
[root@www java]# cd jakarta-tomcat-connectors-1.2.15-src/jk/native
[root@www jakarta-tomcat-connectors-1.2.15-src ]# ./configure --with-apxs=/usr/local/apache2/bin/apxs

[root@www jakarta-tomcat-connectors-1.2.15-src ]# make
[root@www java]# cp /usr/local/apache2 /mod_jk.so  /usr/local/apache2/modules/

 
5 在/usr/local/apache2/conf/下面建立两个配置文件mod_jk.conf和workers.properties。

[root@www java]# vi 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

 

[root@www java]# vi workers.properties
添加以下内容:

# Defining a worker named worker1 and of type ajp13
worker.list=worker1

# Set properties for worker1
worker.worker1.type=ajp13 
worker.worker1.host=localhost 
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

 

再配置httpd.conf,作以下修改:

[root@www java]# vi /usr/local/apache2/ conf/httpd.conf

 

增加关于加载mod_jk的语句:

LoadModule jk_module modules/mod_jk.so
Include /usr/local/apache2/conf/mod_jk.conf

 

#您的站点项目所在路径,应与tomcat中的目录设置相同 

DocumentRoot "/usr/local /t omcat/webapps"  

#默认首页 

DirectoryIndex index.html index.htm index.jsp 


tomcat webapps 下建立一个index.jsp,启动Apache和Tomcat,用浏览器访问http://localhost/,应该可以看到正确的页面了。
 
 
6 apache主要目录和文件说明
     主配置文件位置/etc/httpd/conf/*或者/usr/local/apache2/conf/httpd.conf。
     启动脚本/etc/rc.d/init.d/httpd。
     格式的帮助文档/usr/local/apache2/manual/*html。
     用在html网页中的图标文件/usr/local/apache2/icons/*。
     建立和更新apache用户的程序/usr/local/apache2/htpasswd。
     http服务器程序/usr/sbin/httpd。
     日志文件/usr/local/apache2/。
 
7 tomcat主要目录和文件说明

/bin :存放windows 或Linux 平台上启动和关闭Tomcat 的脚本文件

/conf :存放Tomcat 服务器的各种全局配置文件,其中最重要的是server.xml 和web.xml

/doc :存放Tomcat 文档

/server :包含三个子目录:classes 、lib 和webapps

/server/lib :存放Tomcat 服务器所需的各种JAR 文件

/server/webapps :存放Tomcat 自带的两个WEB 应用admin 应用和 manager 应用

/common/lib :存放Tomcat 服务器以及所有web 应用都可以访问的jar 文件

/shared/lib :存放所有web 应用都可以访问的jar 文件(但是不能被Tomcat 服务器访问)

/logs :存放Tomcat 执行时的日志文件

/src :存放Tomcat 的源代码

/webapps :Tomcat 的主要Web 发布目录,默认情况下把Web 应用文件放于此目录

/work :存放JSP 编译后产生的class 文件

二、WEB 应用的目录结构:假设在$CATALINA_HOME/webapps 下有javaapp 的web 应用

/javaapp :Web 应用的根目录,所有的jsp 文件和html 文件都在此目录下

/java app/WEB_INF :存放该web 应用发布时的描述文件web.xml

/java app/WEB_INF/class :存放各种class 文件,Servlet 文件也存放于此目录下

/java app/WEB_INF/lib :存放各钟Web 应用所需要的jar 文件。比如可以存放JDBC 驱动程序的JAR 文件

三、Tomcat 加载类和资源的顺序为(java app 应用为例):

1 、javaapp     (/webapps/java app/Web-INF/ 下的classes ,lib 子目录中*.calss 及*.jar ,仅javaapp 可以加载)

2 、Bootstrap    ($JAVA_HOME/jre/lib/ext/*.jar )

3 、System       ($CLASSPATH/*.class 和CLASSPATH 中指定的jar )

4 、Common       ($CATALINA_HOME/common/ 下的classes ,lib ,endores 子目录中*.class 及*.jar )

5 、Catalina     ($CATALINA_HOME/server/ 下的classes ,lib 子目录中*.calss 及*.jar ,仅Tomcat 可以加载)

6 、Shared       ($CATALINA_HOME/shared/ 下的classes ,lib 子目录中*.calss 及*.jar ,仅所有Web应用可以加载)

四、$CATALINA_HOME/conf/server.xml 配置简介

1 、 元素属性

port :指定一个端口,这个端口负责监听关闭tomcat 的请求

shutdown :指定向端口发送的命令字符串,通常是“SHUTDOWN ”

2 、 元素属性

name :指定service 的名字,通常是”Catalina”

3 、 元素属性(表示客户端和service 之间的连接):

port :指定服务器端要创建的端口号,并使用这个断口监听来自客户端的请求

minProcessors (考察是否有此属性):服务器端启动时创建的处理请求的线程数 

maxProcessors (考察是否有此属性):最大可以创建的处理请求的线程数 

maxThreads :服务器创建的最大线程数

minSpareThreads :最小剩余线程数

maxSpareThreads :最大剩余线程数

enableLookups :如果为true ,则可以通过调用request.getRemoteHost ()进行DNS 查询来得到远程客户端的实际主机名,若为false 则不进行DNS 查询,而是返回其IP 地址

redirectPort :指定当服务器正在处理HTTP 请求时收到了一个SSL 传输请求后重定向的端口号 

acceptCount :指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过的请求将不予处理 

connectionTimeout :指定超时的时间数(以毫秒为单位)

disableUploadTimeout :不明

debug :不明

protocol :不明

4 、 元素属性(指定service 中的请求处理主机,接收和处理来自Connector 的请求)

name :指定Engine 的名字,通常是”Catalina”

defaultHost :指定默认的处理请求的主机名,至少与某个host 元素的name 属性值是相同的

5 、 元素属性(表示一个web 应用程序)

docBase :指定此Web 应用的绝对或相对路径,也可以为WAR 文件的路径

path :表示此Web 应用程序的url 的入口,如为“/java “,则请求的URL 为http://localhost:8080/java /

reloadable :如果为true ,则Tomcat 在运行时会自动监视Web 应用的/WEB-INF/lib 和/WEB-INF/classes 下文件的改动,自动装载新应用,使我们可以在不重启Tomcat 的情况下更新Web 应用

6 、 元素属性(表示一个虚拟主机)

name :指定虚拟主机名字

debug :指定日志级别

appBase :存放Web 应用程序的基本目录,可以是绝对路径或相对于$CATALINA_HOME 的目录,默认是$CATALINA_HOME/webapps

unpackWARs :如果为true ,则tomcat 会自动将WAR 文件解压后运行,否则不解压而直接从WAR 文件中运行应用程序

autoDeploy :如果为true ,表示Tomcat 启动时会自动发布appBase 目录下所有的Web 应用(包括新加入的Web应用)

deployOnStarup :如果此项为true ,表示Tomcat 服务器启动时会自动发布appBase 目录下所有Web 应用。如果Web 应用在server.xml 中没有相应的 元素, 则将采用默认的Context 配置。deployOnStarup 的默认设置是true

alias :指定虚拟主机的别名,可以指定多个别名

xmlValidation :

linux(centos) java+apache+tomcat配置

 

资源下载链接为: https://pan.quark.cn/s/1bfadf00ae14 “STC单片机电压测量”是一个以STC系列单片机为基础的电压检测应用案例,它涵盖了硬件电路设计、软件编程以及数据处理等核心知识点。STC单片机凭借其低功耗、高性价比和丰富的I/O接口,在电子工程领域得到了广泛应用。 STC是Specialized Technology Corporation的缩写,该公司的单片机基于8051内核,具备内部振荡器、高速运算能力、ISP(在系统编程)和IAP(在应用编程)功能,非常适合用于各种嵌入式控制系统。 在源代码方面,“浅雪”风格的代码通常简洁易懂,非常适合初学者学习。其中,“main.c”文件是程序的入口,包含了电压测量的核心逻辑;“STARTUP.A51”是启动代码,负责初始化单片机的硬件环境;“电压测量_uvopt.bak”和“电压测量_uvproj.bak”可能是Keil编译器的配置文件备份,用于设置编译选项和项目配置。 对于3S锂电池电压测量,3S锂电池由三节锂离子电池串联而成,标称电压为11.1V。测量时需要考虑电池的串联特性,通过分压电路将高电压转换为单片机可接受的范围,并实时监控,防止过充或过放,以确保电池的安全和寿命。 在电压测量电路设计中,“电压测量.lnp”文件可能包含电路布局信息,而“.hex”文件是编译后的机器码,用于烧录到单片机中。电路中通常会使用ADC(模拟数字转换器)将模拟电压信号转换为数字信号供单片机处理。 在软件编程方面,“StringData.h”文件可能包含程序中使用的字符串常量和数据结构定义。处理电压数据时,可能涉及浮点数运算,需要了解STC单片机对浮点数的支持情况,以及如何高效地存储和显示电压值。 用户界面方面,“电压测量.uvgui.kidd”可能是用户界面的配置文件,用于显示测量结果。在嵌入式系统中,用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值