linux apache与tomcat?apache官网下载

老铁们,大家好,相信还有很多朋友对于linux apache与tomcat和apache官网下载的相关问题不太懂,没关系,今天就由我来为大家分享分享linux apache与tomcat以及apache官网下载的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

Apache与Tomcat有什么关系和区别

Apache和 Tomcat都是web网络服务器,两者既有联系又有区别,在进行HTML、PHP、JSP、Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置。

Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP)

Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行

区别

Apache是有C语言实现的,支持各种特性和模块从而来扩展核心功能;Tomcat是Java编写的,更好的支持Servlet和JSP。

1、Apache是Web服务器,Web服务器传送(serves)页面使浏览器可以浏览,Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(business logic)。

Tomcat是运行在Apache上的应用服务器,应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。它只是一个servlet(jsp也翻译成servlet)容器,可以认为是Apache的扩展,但是可以独立于apache运行。

2、Apache是普通服务器,本身只支持html静态普通网页。不过可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然),Tomcat是jsp/servlet容器,同时也支持HTML、JSP、ASP、PHP、CGI等,其中CGI需要一些手动调试,不过很容易的。

3、Apache侧重于http server,Tomcat侧重于servlet引擎,如果以standalone方式运行,功能上Tomcat与apache等效支持JSP,但对静态网页不太理想。

4、Apache可以运行一年不重启,稳定性非常好,而Tomcat则不见得。

5、首选web服务器是Apache,但Apache解析不了的jsp、servlet才用tomcat。

6、Apache是很最开始的页面解析服务,tomcat是后研发出来的,从本质上来说tomcat的功能完全可以替代Apache,但Apache毕竟是tomcat的前辈级人物,并且市场上也有不少人还在用Apache,所以Apache还会继续存在,不会被取代,apache不能解析java的东西,但解析html速度快。

作为 Web服务器:相比 Apache,Nginx使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx尤其受到虚拟主机提供商的欢迎。在高连接并发的情况下,Nginx是Apache服务器不错的替代品: Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一.能够支持高达 50000个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发模型.

Nginx作为负载均衡服务器: Nginx既可以在内部直接支持 Rails和 PHP程序对外进行服务,也可以支持作为 HTTP代理服务器对外进行服务. Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比 Perlbal要好很多.

2、Nginx配置简洁, Apache复杂,Nginx启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动.你还能够不间断服务的情况下进行软件版本的升级. Nginx静态处理性能比 Apache高 3倍以上,Apache对 PHP支持比较简单,Nginx需要配合其他后端来使用,Apache的组件比 Nginx多.

3、最核心的区别在于apache是同步多进程模型,一个连接对应一个进程;nginx是异步的,多个连接(万级别)可以对应一个进程.

4、nginx的优势是处理静态请求,cpu内存使用率低,apache适合处理动态请求,所以现在一般前端用nginx作为反向代理抗住压力,apache作为后端处理动态请求。

linux下apache+tomcat集群详细配置

环境:

操作系统均为:CentOS 5.1

Apache2.X服务器一台:IP地址192.168.232.4;安装路径/usr/local/apache;

Tomcat6服务器一台:IP地址192.168.232.5;安装路径/usr/local/tomcat;

Tomcat6服务器一台:IP地址192.168.232.6;安装路径/usr/local/tomcat;

配置:

Apache安装:

#./configure--prefix=/usr/local/apache--enable-modules=so--enable-mods-shared=all--enable-proxy--enable-proxy-connect--enable-proxy-ftp--enable-proxy-http--enable-proxy-ajp--enable-proxy-balancer--enable-rewrite

注释:激活tomcat集群需要的 enable-proxy,enable-proxy-http,enable-proxy-connect,enable-proxy-ajp和enable-proxy-balancer,其中proxy-ajp和proxy-balancer必须依赖proxy,如果是自定义的编译除了以上几个必须的模块外,mod_status也要编译进去,切记。enable-proxy-ftp可以不编译。

#make;make install

制作Apache启动项:

#cp support/apachectl/etc/rc.d/init.d/httpd

#vi/etc/rc.d/init.d/httpd

添加以下内容:(包括#号)

# Startup script for the Apache Web Server

# chkconfig: 2345 85 15

# description: Apache is a World Wide Web server.It is used to server

# HTML files and CGI.

# processname: httpd

# pidfile:/usr/local/apache/log/httpd.pid

# config:/usr/local/apache/conf/httpd.conf

增加服务项

#chkconfig--add httpd

#chmod 755/etc/rc.d/init.d/httpd

#chkconfig--level 345 httpd on

JDK安装:

#chmod a+x jdk-6u4-linux-i586-rpm.bin

#./jdk-6u4-linux-i586-rpm.bin

JAVA环境变量设置:

#vi/etc/profile

在文件最后添加以下内容:

JAVA_HOME=/usr/java/jdk1.6.0_04

CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

PATH=$JAVA_HOME/bin:$PATH

CATALINA_HOME=/usr/local/tomcat

export JAVA_HOME CLASSPATH PATH CATALINA_HOME

执行如下命令使环境变量生效:

source/etc/profile

测试配置是否成功:

java–version

Tomcat安装:

#wget [url][/url]

#tar zxvf apache-tomcat-6.0.16.tar.gz

#mv apache-tomcat-6.0.16/usr/local/tomcat

Tomcat随机启动:

#vi/etc/rc.local

添加以下内容:

/usr/local/tomcat/bin/startup.sh

tomcat6配置文件server.xml:

<!-- You should set jvmRoute to support load-balancing via AJP ie:

<Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">

-->

<Engine name="Catalina" defaultHost="localhost">

改成

<!-- You should set jvmRoute to support load-balancing via AJP ie:

-->

<Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcatX">

<!--

<Engine name="Catalina" defaultHost="localhost">

-->

说明:

第一台tomcat就把jvmRoute="tomcat1"

第二台tomcat就把jvmRoute="tomcat2"

<!--

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

-->

去掉注释变为

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

***群集详细配置***

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"

channelSendOptions="8">

<Manager className="org.apache.catalina.ha.session.DeltaManager"

expireSessionsOnShutdown="false"

notifyListenersOnReplication="true"/>

<Channel className="org.apache.catalina.tribes.group.GroupChannel">

<Membership className="org.apache.catalina.tribes.membership.McastService"

address="228.0.0.4"

port="45564"

frequency="500"

dropTime="3000"/>

<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"

address="auto"

port="4000"

autoBind="100"

selectorTimeout="5000"

maxThreads="6"/>

<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">

<Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>

</Sender>

<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>

<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>

</Channel>

<Valve className="org.apache.catalina.ha.tcp.ReplicationValve"

filter=""/>

<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"

tempDir="/tmp/war-temp/"

deployDir="/tmp/war-deploy/"

watchDir="/tmp/war-listen/"

watchEnabled="false"/>

<ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>

<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>

</Cluster>

配置应用的web.xml:

在每个webapps应用中,修改配置文件web.xml文件添加元素<distributable/>

在web.xml文件中<web-app>元素下增加以下内容:

<!--此应用将与群集服务器复制Session-->

<distributable/>

具体修改如下:

修改前:

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="[url][/url]"

xmlns:xsi=""

xsi:schemaLocation=" [url][/url]"

version="2.5">

</web-app>

修改后:

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="[url][/url]"

xmlns:xsi=""

xsi:schemaLocation=" [url][/url]"

version="2.5">

<!--此应用将与群集服务器复制Session-->

<distributable/>

</web-app>

配置apache的ajp负载均衡功能:

确保将以下Module的注释去掉

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_connect_module modules/mod_proxy_connect.so

LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

LoadModule proxy_http_module modules/mod_proxy_http.so

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

LoadModule status_module modules/mod_status.so

增加以下内容:

# Proxypass Config

Include conf/extra/httpd-modproxy.conf

建立文件httpd-modproxy.conf输入内容:

<Location/server-status>

SetHandler server-status

Order Deny,Allow

Deny from all

Allow from all

</Location>

<Location/balancer-manager>

SetHandler balancer-manager

Order Deny,Allow

Deny from all

Allow from all

</Location>

ProxyRequests Off

ProxyPass/ balancer://tomcatcluster stickysession=jsessionid nofailover=On

<Proxy balancer://tomcatcluster>

BalancerMember [url][/url] loadfactor=1

BalancerMember [url][/url] loadfactor=2

</Proxy>

注释:

ProxyRequests Off表示启用反向代理,必须开启;

ProxyPass为代理转发的Url,即将所有访问/的请求转发到群集balancer://tomcatcluster,这里为/即将所有访问/的请求转发到群集balancer://tomcatcluster的/test目录;

BalancerMember为群集的成员,即群集服务器1或2,负载均衡服务器会根据均衡规则来将请求转发给BalancerMember;

调试负载均衡集群系统:

访问apache服务器的web服务:[url][/url]

如果显示负载均衡有关信息则说明成功了,接着可以访问[url][/url]即访问到了tomcat的应用

***必须先启动Tomcat服务再启动Apache服务!***

参考文档:

[url][/url]

[url][/url]

[url][/url]

[url][/url]

apache和tomcat有什么不同,为什么要整合apache 和tomcat

apache是web服务器,tomcat是应用(java)服务器,它只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展。

apache和tomcat都可以做为独立的web服务器来运行。但是apache不能解释java程序(jsp,serverlet)

Apache是普通服务器,本身只支持html即普通网页。不过可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。反之不然)

两者都是一种容器,只不过发布的东西不同。apache是html容器,功能像IIS一样,tomcat是jsp/servlet容器,用于发布JSP及JAVA的,类似的有IBM的webshere、EBA的Weblogic,sun的JRun等

apache和tomcat是独立的,在通一台服务器上可以集成。

打个比方:apache是一辆卡车,上面可以装一些东西如html等。但是不能装水,要装水必须要有容器(桶),tomcat就是一个桶(装像JAVA这样的水),而这个桶也可以不放在卡车上。

扩展资料:

Apache是普通服务器,本身只支持html即普通网页。不过可以通过插件支持php,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。反之不然)。Apache只支持静态网页,但像php,cgi,jsp等动态网页就需要Tomcat来处理。

Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。由于Tomcat本身也内含了一个HTTP服务器,它也可以被视作一个单独的Web服务器。

但是,不能将 Tomcat和 Apache Web服务器混淆,Apache Web Server是一个用 C语言实现的 HTTP web server;这两个 HTTP web server不是捆绑在一起的。Apache Tomcat包含了一个配置管理工具,也可以通过编辑 XML格式的配置文件来进行配置。Apache,nginx,tomcat并称为网页服务三剑客,可见其应用度之广泛。

参考资料:apache tomcat百度百科

阅读剩余
THE END