Linux下Tomcat与Apache Web服务器整合.docx
- 文档编号:11453287
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:8
- 大小:19.44KB
Linux下Tomcat与Apache Web服务器整合.docx
《Linux下Tomcat与Apache Web服务器整合.docx》由会员分享,可在线阅读,更多相关《Linux下Tomcat与Apache Web服务器整合.docx(8页珍藏版)》请在冰豆网上搜索。
Linux下Tomcat与ApacheWeb服务器整合
Linux下Tomcat与ApacheWeb服务器整合
1、引言
基于Web技术Internet/Intranet近年来已经得到了广泛应用,Intranet是以TCP/IP协议为基础、以Web为核心企业内部网,用户通过低成本、简单易用客户浏览器就能随时随地到企业Web站点上查阅自己所需数据。
浏览器客户端操作界面一致性避免了C/S模式客户端程序多样性,而服务器端开放和基于标准连接方案使企业很方便地通过Internet同外界联系;同时,Web信息动态、交互式发布方式从根本上改变了企业服务质量,增加了企业商业机会。
在许多用户看来,一个Web网站成败主要在于它所提供内容和功能,而支持这些内容和功能Web服务器起着非常重要作用。
2、Tomcat容器
Tomcat是一个免费开源Serlvet容器,它是Apache基金会Jakarta项目中一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。
由于有了Sun参与和支持,最新Servlet和Jsp规范总能在Tomcat中得到体现。
Tomcat是稳固独立Web服务器与ServletContainer,不过,其Web服务器功能则不如许多更健全Web服务器完整,如ApacheWeb服务器(举例来说,Tomcat没有大量选择性模块)。
不过,Tomcat是自由开源软件,而且有许多高手致力于其发展。
2.1Linux下安装Tomcat
在安装Tomcat之前需要安装j2sdk(Java2SoftwareDevelopmentKit),安装j2sdk步骤如下:
1)到下载j2sdk,如j2sdk-1_4_2_04-linux-i586-rpm.bin。
2)在终端中转到j2sdk-1_4_2_04-linux-i586-rpm.bin所在目录,输入命令chmod+xj2sdk-1_4_2_04-linux-i586-rpm.bin,添加执行权限。
3)执行命令./j2sdk-1_4_2_04-linux-i586-rpm.bin,生成j2sdk-1_4_2_04-linux-i586.rpm文件。
4)执行命令chmod+xj2sdk-1_4_2_04-linux-i586.rpm,给j2sdk-1_4_2_04-linux-i586.rpm添加执行权限。
5)执行命令rpm-ivhj2sdk-1_4_2_04-linux-i586.rpm,安装j2sdk。
6)安装界面会出现授权协议,按Enter键接受,把j2sd安装在/usr/java/j2sdk1.4.2_04。
7)设置环境变量,在/etc/profile.d/目录下建立文件java.sh,文件内容如下:
#setjavaenvironment
exportJAVA_HOME=/usr/java/j2sdk1.4.2_04
exportCLASSPATH=.:
$JAVA_HOME/lib:
$JAVA_HOME/jre/lib:
/usr/java/jdbc
exportPATH=$JAVA_HOME/bin:
$JAVA_HOME/jre/bin:
$PATH
8)执行命令chmod755/etc/profile.d/java.sh,给java.sh分配权限。
9)在终端中分别执行命令javac?
help和java?
version,如果看到有关信息,则表示j2sdk已成功安装。
接下来安装tomcat,安装tomcat步骤如下:
1)访问http:
//jakarta.apache.org/tomcat/index.html,下载二进制版tomcat,如jakarta-tomcat-5.5.10.tar.gz,解压到/usr/local目录:
cd/usr/local
gzip?
zxvfjakarta-tomcat-5.5.10.tar.gz
2)修改$tomcat/bin/startup.sh和shutdown.sh文件,
exportJAVA_HOME=/usr/java/j2sdk1.4.2_04
exportCATALINA_HOME=/usr/local/tomcat-5.5.10
export
CLASSPATH=.:
$JAVA_HOME/lib:
$JAVA_HOME/jre/lib:
/usr/java/jdbc
exportPATH=$JAVA_HOME/bin:
$JAVA_HOME/jre/bin:
$PATH
3)执行startup.sh即可在http:
//localhost:
8080/访问到tomcat缺省面页.
2.2单独运行Tomcat优点
1)容易架设。
下载Tomcat,设定一些配置,就完成了。
不需要花费时间将Web服务器连接器整合至其它Web服务器中。
2)不需要担心连接器。
永远不需要排除在其它Web服务器与Tomcat之间任何性能或联机方面问题。
3)有较佳安全防护。
相对于其它以C、C++所编写Web服务器,Tomcat比较能忍受远程缓冲区溢位攻击。
因为TomcatJava虚拟机是位于网络及操作系统之间,它可以防止几乎所有类型缓冲区溢位攻击。
使用Tomcat安全防护领域,可以指定对各个资源访问。
4)容易移植。
可以将Tomcat服务器(以及应用程序)移植到不同服务器、操作系统甚至架构上。
因为Tomcat是以Java编写,因此可以将其整个目录结构内容复制到其它计算机上运行,而完全不需要任何改变,甚至于新计算机架构与原来不同也一样。
2.3单独运行Tomcat缺点
1)Tomcat支持软件比较少。
Tomcat内建Web服务器支持软件比ApachehttpdWeb服务器少。
2)TomcatWeb服务器功能少。
相对于TomcatWeb服务器,Apachehttpd服务器有更完整功能。
3)虽然Tomcat运行速度快,但还没有Apachehttpd快。
Tomcat服务器比Apachehttpd慢,不过,它还在改进中,而且仍然非常快,快到足以运行今日大多数企业网站,只是在提供静态页面内容上没有Apache快。
3、ApacheWeb服务器
Apache是根据NCSA服务器发展而来,NCSA是最早出现Web服务器程序之一,由伊利诺斯大学Urbana-Champaign分校美国国家超级计算应用中心开发。
在发展初期,Apache主要是一个基于UNIX系统服务器,它宗旨就是建成一个基于UNIX系统、功能更强、效率更高并且速度更快WWW服务器,这就决定了它是从其他服务器演变而来,并且添加了大量补丁来增强它在某一方面性能,所以它就被命名为“APA+CHyServer(一个补丁组成服务器)”。
发展到今天,Apache已经被移植到很多平台上了。
Apache开发遵循GPL协议,由全球志愿者一起开发和维护。
在保持强大功能及不断更新同时,它仍然是免费,并且公开源代码。
3.1安装Apache服务器
可以通过以下三种方法安装Apache服务器。
1)如果安装Linux版本中带用Apache话,就在选择所要安装服务器时候,将httpd这个服务选上,Linux安装程序将自动完成Apache安装工作,并做好基本配置。
2)使用可执行文件软件包,这比较适合那些对编译工作不是太熟悉初级用户,因为它相对比较简单。
下载软件包apache_1.2.4.e.tar.gz,执行命令tarxvzfapache_1.2.4.e.tar.gz完成安装工作。
如果使用是RedHatLinux话,也可以下载apache_1.2.4.rpm软件安装包,然后使用rpm?
ivhapache_1.2.4.rpm命令安装。
3)如果想把Apache服务器充分利用起来话,就一定要自己编译Apache定制其功能。
下载包含Apache源代码软件包apache_1.2.4.tar.gz;然后用tar命令将它解开;将当前目录改变为Apache源代码发行版src目录;将配置样本文件(Configuration.tmpl)复制为Configuration文件;编辑Configuration文件中配置选项:
Makefile配置选项:
一些编译选项:
.“CC=”一行指定用什么编译软件编译,一般为“CC=gcc”;如果需要将额外标志(参数)指定给C编译软件,可以使用:
EXTRA_CFLAGS=
EXTRA_LFLAGS=
如果系统需要特殊库和包含文件,可以在这里指定它们:
EXTRA_LIBS=
EXTRA_INCLUDES=
如果要改变代码优化设置话,须将下面一句去掉注释,然后改成所需要值:
#OPTIM=-O2
Rule配置选项:
用来决定需要什么功能,一般情况下无需改变。
模块配置:
模块是Apache组成部分,它为Apache内核增加新功能。
通过使用模块配置,可以自定义在Apache服务器中需要什么功能,这个部分也是Apache灵活性表现。
模块配置行如下所示:
AddModulemodules/standard/mod_env.o
如果需要Apache服务器具备什么功能,就将那个模块用AddModule语句加到配置文件Configuration中去。
下面列出了Apache模块功能:
模块名 功能 缺省
mod_access 提供基于主机访问控制命令 y
mod_actions 能够运行基于MIME类型CGI脚本或HTTP请求方法 y
mod_alias 能执行URL重定向服务 y
mod_asis 使文档能在没有HTTP头标情况下被发送到客户端 y
mod_auth 支持使用存储在文本文件中用户名、口令实现认证 y
mod_auth_dbm 支持使用DBM文件存储基本HTTP认证 n
mod_auth_mysql 支持使用MySQL数据库实现基本HTTP认证 n
mod_auth_anon 允许以匿名方式访问需要认证区域 y
mod_auth_external 支持使用第三方认证 n
mod_autoindex 当缺少索引文件时,自动生成动态目录列表 y
mod_cern_meta 提供对元信息支持 n
mod_cgi 支持CGI y
mod_dir 能够重定向任何对不包括尾部斜杠字符命令请求 y
mod_env 使你能够将环境变量传递给CGI或SSI脚本 n
mod_expires 让你确定Apache在服务器响应请求时如何处理Expires y
mod_headers 能够操作HTTP应答头标 y
mod_imap 提供图形映射支持 n
mod_include 使支持SSI n
mod_info 对服务器配置提供了全面描述 y
mod_log_agent 允许在单独日志文件中存储用户代理信息 n
mod_log_config 支持记录日志 y
mod_log_referer 提供了将请求中Referer头标写入日志功能 n
mod_mime 用来向客户端提供有关文档元信息 y
mod_negotiation 提供了对内容协商支持 y
mod_setenvif 使你能够创建定制环境变量 y
mod_speling 使你能够处理含有拼写错误或大小写错误URL请求 n
mod_status 允许管理员通过WEB管理Apache y
mod_unique_id 为每个请求提供在非常特殊条件下保证是唯一标识 n
在src目录下执行:
“./configure”;
编译Apache:
执行命令“make”;
将编译好可执行文件httpd复制到/etc/httpd/bin目录下;将Apache发行版配置文件:
access.conf、httpd.conf、mime.types、srm.conf文件复制到/etc/httpd/conf目录下。
到此为止,安装完成。
3.1单独运行Apachehttpd优点
1)Apachehttpd比Tomcat内建Web服务器快。
2)较多软件支持。
Apachehttpd有庞大支持软件链接库。
3)启动与停止快。
一般来说,Apachehttpd启动与停止时间都比Tomcat短。
3.2单独运行Apachehttpd缺点
1)架设比较困难。
比起单独运行Tomcat,安装ApacheWeb服务器并让它与Tomcat协同运行要复杂很多。
2)会拖慢动态网页内容服务。
3)安全漏洞。
Apachehttpd比较容易受到缓冲区溢位攻击。
4)升级比较复杂。
4、Tomcat与Apache整合
有几种将Tomcat整合到ApachehttpdWeb服务器方法:
1)架使用不同端口号分担负载。
该方法是最容易实现,只需要在现成网页目录中假如URL以连接到在同一台Web服务器机器上TomcatWeb服务器端口(如8080)。
实际上还是执行两个完整Web服务器程序,彼此之间并没有真正整合。
2)从Apache将请求发送至Tomcat代理服务器。
该方法会在主服务器中使用HTTP代理机制。
代理机制常会用来将来自网关上运行Web服务器Web信息流重新路由至外部因特网上网站。
不过,也可以用来将网站区域或目录信息流重导至TomcatWeb服务器。
3)使用mod_jk2连接器。
该方法使用运行于现有ApachehttpdWeb服务器之内连接器模块(如mod_jk),并经由特定协议快速地将请求转送至Tomcat。
这是将Tomcat连接至Apachehttpd标准方式。
4)单一进程中执行两个程序。
该方法通过让JVM在Apachehttpd进程空间中运行方式,可以提供“完全整合”功能。
这是最有效办法,但也是最依赖于服务器实现。
【参考文献】
[1]JasonBrittain,IanF.Darwin,Tomcat:
TheDefinitiveGuide,2003
[2]JasonBrittain,IanF.Darwin著,O’ReillyTaiwan译,朱恩从改编,Tomcat权威指南,2004
[3]http:
//www.apache.org
[4]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux下Tomcat与Apache Web服务器整合 Linux Tomcat Apache Web 服务器 整合
![提示](https://static.bdocx.com/images/bang_tan.gif)