一 安装Apache

下载apache:

https://www.apache.org/   ->  http://mirrors.cnnic.cn/apache/  -> http://mirrors.cnnic.cn/apache/httpd/

httpd-2.2.31.tar.gz

#cd /usr/local/src/

#wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.31.tar.gz

以源码方式安装

#yum install -y gcc
#yum install zlib zlib-devel
#tar -zxvf httpd-2.2..tar.gz
#cd httpd-2.2.
#./configure --prefix=/usr/local/apache2 \
--enable-modules=most \
--enable-mods-shared=all \
--enable-so \
#make
#make install
configure:error: in `/usr/local/src/httpd-2.2./srclib/apr':
configure:error: no acceptable C compiler found in $PATH
See `config.log'for more details.
执行./configure时,可能会遇到以上错误,这个主要是gcc包没有安装。对于这个问题,
yum install -y gcc

Apache 主配置文件为: /usr/local/apache2/conf/httpd.conf  

/usr/local/apache2/bin/apachectl -t
查看apache编译参数 : cat /usr/local/apache2/build/config.nice
查看apache加载的模块 : apachectl -M
测试apache配置文件是否正确 : apachectl -t
更改配置文件后,重新加载apache : apachectl graceful
Apache启动:/usr/local/apache2/bin/apachectl start|restart|stop

二:安装Tomcat

下载:http://tomcat.apache.org/download-70.cgi

  • tar.gz (pgpmd5sha1)    http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.70/bin/apache-tomcat-7.0.70.tar.gz

#cd /usr/local/
wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.70/bin/apache-tomcat-7.0.70.tar.gz
tar -zxvf apache-tomcat-7.0.70.tar.gz
mv apache-tomcat-7.0.70 tomcat7.0.70

三:安装JDK

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

Java SE Development Kit 7u80

Linux x64 146.42 MB   jdk-7u80-linux-x64.tar.gz

cd /usr/local

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz

(linux通过wget直接下载jdk,避免用户验证)

tar -zxvf jdk-7u80-linux-x64.tar.gz  #解压后会产生一个jdk1.7.0_80目录

/usr/local/jdk1.7.0_80/bin/java -version

四、安装JK模块

为了更灵活地使用mod_jk连接器,这里采用源码方式编译出所需的JK模块,

下载 :http://tomcat.apache.org/download-connectors.cgi       JK 1.2.41 Source Release tar.gz

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/

cd /usr/local
wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.41-src.tar.gz
yum install libtool autoconf
tar xzvf tomcat-connectors-1.2.41-src.tar.gz
cd tomcat-connectors-1.2.41-src/native
chmod 755  buildconf.sh
./configure --with-apxs=/usr/local/apache2/bin/apxs #这里指定的是Apache安装目录中的apxs的位置
make
make install

--------------------------------------------------------

安装完调试用了两天。老是出错。所以做这个还是要细心 差一个扛/都是不行的。

修改  vim /usr/local/apache2/conf/httpd.conf  加入


Listen 192.168.1.106:80
ServerName localhost:80

<IfModule dir_module>
DirectoryIndex index.html index.jsp
</IfModule>

ServerTokens Full
ServerSignature On
LoadModule jk_module modules/mod_jk.so #加载mod_jk模块
JkWorkersFile /usr/local/apache2/conf/workers.properties
JkMountFile /usr/local/apache2/conf/uriworkermap.properties #
JkLogFile /usr/local/apache2/logs/mod_jk.log
JkLogLevel info
JkLogstampformat "[%a %b %d %H:%M:%S %Y]" NameVirtualHost *:80 #启用虚拟主机上面的DocumentRoot指令的配置会失效。以虚拟主机的DocumentRoot为主
<VirtualHost *:>
ServerAdmin webmaster@ixdba.net
DocumentRoot /webdata/www
ServerName 192.168.1.106
ErrorLog logs/error_log
CustomLog logs/access_log common
JkMountFile conf/uriworkermap.properties
#增加虚拟机目录的权限控制 要不然会报错 You don't have permission to access / on this server 
<Directory "/webdata/www">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow From All
</Directory>
</VirtualHost>
建立相关定义的文件
# touch /usr/local/apache2/conf/workers.properties
# touch /usr/local/apache2/conf/uriworkermap.properties
# touch /usr/local/apache2/logs/mod_jk.log
编辑文件
# cat workers.properties #定义tomcat主机
worker.list=tomcat1
worker.tomcat1.port=
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor= # cat uriworkermap.properties #定义tomcat处理的文件类型,tomcat不处理的由apache来处理。
/*=tomcat1
!/*.jpg=tomcat1
!/*.gif=tomcat1
!/*.png=tomcat1
!/*.bmp=tomcat1
!/*.html=tomcat1
!/*.htm=tomcat1
!/*.swf=tomcat1
!/*.css=tomcat1
!/*.js=tomcat1

关闭tomcat的侦听端口 (主要是为安全考虑)    
vim /usr/local/tomcat7.0.70/conf/server.xml

注意修改server.xml 不能出错,否则tomcat会启动失败。出错的话 ,可在tomcat7.0.70/logs/ 查看启动日志 tail catalina.out

<!--carbon注释 关闭tomcat的8080端口 我们走的是apache的80端口
<Connector port="" protocol="HTTP/1.1"
connectionTimeout=""
redirectPort="" />
-->
在</Host>后面增加Host,appBase和上面的虚拟主机的目录对应/webdata/www
</Host>
<Host name="192.168.1.106" debug="" appBase="/webdata/www" unpackWARs="true">
<Context path="" docBase="" dubug=""/> 
</Host>

Tomcat启动脚本 Tomcat的bin目录下 有 catalina.sh  startup.sh shutdown.sh 3个脚本。
而startup.sh 和 shutdown.sh 其实都用不同的参数调用了 catalina.sh脚本。
tomcat 启动的时候会去查找JDK的安装路径,因此要配置JAVA_HOME环境变量。 
三种方法:
1、 /etc/profile :系统的全局环境变量。
2、 ~/.bash_profile 用户环境变量。
3 、vim /usr/local/tomcat7.0.70/bin/catalina.sh

#环境变量 这三种方法只需设置一个地方就可以。
vim /etc/profile
JAVA_HOME=/usr/local/jdk1..0_80/
JAVA_BIN=/usr/local/jdk1..0_80/bin
JRE_HOME=/usr/local/jdk1..0_80/jre
PATH=$PATH:/usr/local/jdk1..0_80/bin:/usr/local/jdk1..0_80/jre/bin
CLASSPATH=/usr/local/jdk1..0_80/jre/lib:/usr/local/jdk1..0_80/lib:/usr/local/jdk1..0_80/jre/lib/charsets.jar
export JAVA_HOME JAVA_BIN JRE_HOME PATH CLASSPATH

vim /usr/local/tomcat7.0.70/bin/catalina.sh

# OS specific support.  $var _must_ be set to either true or false.
JAVA_HOME=/usr/local/jdk1..0_80
export JAVA_HOME #export 使它生效

cygwin=false
darwin=false
mkdir -p /webdata/www  #-p 级连创建
cp -r /usr/local/tomcat7.0.70/webapps/ROOT/* /webdata/www
cp -r /usr/local/tomcat7.0.70/webapps/docs /webdata/www
/usr/local/tomcat7.0.70/bin/startup.sh
/usr/local/apache2/bin/apachectl start #最后这个命令,切记不要进入到apache2的bin目录下运行 apachectl start
#这样是不一样的,单独输入命令apachectl start 会运行环境变量下的命令造成运行路径跟本不一样。运行apache会出现问题
最后通过命令 netstat -antp 查看是否有httpd 和两个java 进程。

http://192.168.1.106/index.jsp  如果可以正常访问 证明JSP正常解析了。接着
在/webdata/www下建立一个test.html  内容自己写 
访问 http://192.168.1.106/text.html    如果可以正常访问证明成功了

Apache + Tomcat + 连接器JK的更多相关文章

  1. Tomcat:基于Apache+Tomcat的集群搭建

    根据Tomcat的官方文档说明可以知道,使用Tomcat配置集群需要与其它Web Server配合使用才可以完成,典型的有Apache和IIS. 这里就使用Apache+Tomcat方式来完成基于To ...

  2. apache/tomcat安装过程略

    apache/tomcat安装过程略 一些变量 apache安装目录 APACHE_PREFIX=/Data/app/apache apache配置文件 APACHE_CONF=/etc/httpd/ ...

  3. Apache +Tomcat的负载均衡与集群配置

    实验拓扑图: 一.搭配环境 (1).Tomcat的安装和配置 Tomcat_a的ip:192.168.55.229 Tomcat_b的ip:192.168.55.231 Tomcat的需要安装jdk和 ...

  4. Linux+Apache+Tomcat集群配置

    参考: http://blog.csdn.net/bluishglc/article/details/6867358# http://andashu.blog.51cto.com/8673810/13 ...

  5. centos6.5 apache+tomcat结合 负载均衡

    一. 负载均衡:根据 uri 表达式把请求分发给各个服务器处理.如:/*.jsp = lb_s  就是说把所有jsp请求交给lb_s , 当然它是个Tomcat. 二. 安装配置mod_jk    m ...

  6. (转)Apache+Tomcat集群配置

    本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apache是ht ...

  7. Apache+Tomcat+mod_jk配置教程

    0.说明 首先我们要弄明白mod_jk的作用是反向代理,而其实使用httpd.conf中的<VirtualHost>标签就可以实现反向代理,为什么还要多搞个mod_jk那么麻烦做反向代理. ...

  8. apache+tomcat负载均衡3种实现方式

    1.首先安装apache,编译完成后,通过IP:端口就行访问,如果返回“it workers”证明Apache启动成功(注意apache的工程路径要正确) 2.下载JK,下载地址为http://mir ...

  9. 1.Apache+Tomcat负载均衡+集群配置

    1.本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apache是 ...

随机推荐

  1. Nginx1.8 安装说明

    安装Nginx .安装pcre cd /usr/local/src mkdir /usr/local/pcre tar zxvf pcre-8.36.tar.gz cd pcre-8.36 ./con ...

  2. iOS自动化探索(九)使用Jenkins自动化打包并发布iOS App

    继前一篇: Mac环境下安装Jenkins Jenkins安装好后, 我们试着创建一个iOS自动打包并发布的任务 iOS App构建必须在MAC上面使用xcode进行,所以我们要安装下xcode集成插 ...

  3. spring 核心接口之 Ordered

    Spring中提供了一个Ordered接口.从单词意思就知道Ordered接口的作用就是用来排序的.Spring框架是一个大量使用策略设计模式的框架,这意味着有很多相同接口的实现类,那么必定会有优先级 ...

  4. iOS使用Instruments的工具

    使用Instruments的工具 iOSXcodeInstrumentsInstruments是一个官方提供的强大的性能调试工具集. 1.Blank(空模板):创建一个空的模板,可以从Library库 ...

  5. 2018.11.13 N4010A 通信设置

    设置电脑之IP地址及Subnet mask.      IP address: 192.168.1.2      Subnet mask: 255.255.255.0, 其它选项为默认. 然后点击OK ...

  6. ffmpeg命令汇总

    1. 查看ffmpeg信息: ldd `which ffmpeg` ffmpeg -filters ffmpeg -h filter=drawtext man ffmpeg ffmpeg --help ...

  7. Scrapy爬虫库使用初体验

    安装pip install Scrapy 中间可能会遇到的问题: 超时,网络问题需要多次尝试 缺少vc++库,官网可以下载 win32api缺失,https://sourceforge.net/pro ...

  8. 用前序和中序重建二叉树 python

    程序实现了用二叉树的前序遍历序列和中序遍历序列重建二叉树,代码用python实现. 首先定义二叉树节点的类: class TreeNode: def __init__(self, x): self.v ...

  9. 利用层序遍历(含空节点)和中序遍历重建二叉树 python

    给定一颗二叉树的层序遍历(不含None的形式)和中序遍历序列,利用两个序列完成对二叉树的重建. 还是通过一个例子来说明整个过程,下图所示的二叉树,层序遍历结果为[a,b,c,d,e],中序遍历结果为[ ...

  10. .NET 方法回调

    使用 AsyncCallback 委托在一个单独的线程中处理异步操作的结果. AsyncCallback 委托表示在异步操作完成时调用的回调方法. 回调方法采用 IAsyncResult 参数,该参数 ...