Linux - apache整合tomcat ( Ubuntu 14.04 x64)

34 篇文章 0 订阅

最近要做个网站,想用JAVA写,之前网站都是PHP做的,所以自己的服务器上已经搭建了了lamp,而Apache占用了80端口,要用JAVA的话,我就要搭建一个tomcat,虽然tomcat默认是8080端口,但是正式上线的网站不可能使用8080的,但是如果要80端口又会冲突,所幸可以整合在一起,而且不麻烦。

以下我默认认为你已经安装好了Java jdk 不会的请走传送门:安装java jdk

安装Apache

这一步很简单,如果没有Apache的话,直接装tomcat好了。没端口冲突。

sudo apt-get install apache2

安装完之后,去配置下apache2的各种配置,不懂的话,就默认吧。
验证方法:

127.0.0.1

网址看能不能打开页面It Works!的。

安装Tomcat

去官网找下载链接,然后在Ubuntu上用wget直接下载下来就好了。

http://tomcat.apache.org/download-80.cgi

传送门~~ 找自己喜欢的版本,注意自己的JAVA jdk版本,如果太低tomcat也要用低版本,反正尽量用1.6 - 1.8左右的jdk吧 如果1.7以上就用tomcat 7就行了。

下载下来之后,解压到任意你喜欢的文件夹,我是放到:

~/install/tomcat

下面了,大家看自己喜欢喽。
然后配置环境变量:

TOMCAT_HOME = /home/alps/install/tomcat

请根据自己的路径填写TOMCAT_HOME路径,尽量不要使用~这种符号代替,可以使用${HOME}这种环境变量代替小波浪。

然后打开tomcat试试:

cd ~/install/tomcat/bin

./startup.sh

然后地址栏输入:

localhost:8080
//或者有域名可以输入域名
www.your_domain.com

如果打开说明安装正常了。

安装mod-jk13

这个模块就是为了能够让apache和tomcat来交互的一个模块,安装方式很简单:

sudo apt-get install libapache2-mod-jk

安装好了之后在/etc/apache2/mods-enabled下会多出一个jk.load文件,重启apache2后,apache自动
装载这个文件以加载mod_jk.

sudo apachectl restart
//或者
sudo service apache restart

修改配置文件

jk.conf

需要修改配置文件jk.conf

/etc/apache2/mods-available/jk.conf

使用你想用的编辑工具( 还是vim把)

//指出mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile /etc/apache2/workers.properties

//Where to put jk logs
JkLogFile /var/log/mod_jk.log

//将所有请求都让tomcat来处理
JkMount /* worker1
这个请慎重选择,一般不要填写这个,后面会在apache的配置文件来配规则的

修改完jk.conf之后,需要修改workers.properties

workers.properties

这个文件在上一步指定了路径了,找到文件,然后打开。

cd /etc/apache2/
//然后
vim workers.properties

需要配置的是:

workers.tomcat_home=这里填写你tomcat_home的路径
workers.java_home=/usr/lib/jvm/jdk...//填写你的Java jdk home路径
workers.list=ajp13_worker,jk-status,jk-manager //这里加上jk-status,jk-manager这两个记住前面这个ajp13_worker名字

然后保存关闭
:wq

配置apache域名拦截规则

首先我们要修改文件:/etc/apache2/site-available/000-default.conf文件。

如果你设置过二级域名,那这里会有很多类似:

<VirtualHost *.80>
    ServerAdmin alps@gmail.com
    ServerName test.domain.com
    DocumentRoot "/var/www/test"
    <Directory "/var/www/test">
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

这种是apache用来配置二级域名的规则,如果你配置过二级域名,那么就在你要拦截的域名配置规则里,</VirtualHost>结束标签之前来添加如下内容:

JkUnMount /*.html ajp13_worker
JkMount /*.jsp ajp13_worker

//上面的JkUnMount是告诉apache什么样的规则不需要使用tomcat来解析
//因为apache在静态资源的解析上比tomcat要快,所以这里对于html jpg js这种资源统一使用apache
//对于.jsp文件就使用tomcat来进行工作

配置tomcat二级域名

因为我们的网站在不同的文件夹下,不可能只有一个文件夹,所以我们同时要在tomcat下配置一个二级域名来让tomcat知道我们应该去哪里找jsp文件。
因为默认tomcat会去自己的TOMCAT_HOME下找到webapp/ROOT下的jsp文件,所以我们配置一下$TOMCAT_HOME/conf/server.xml文件。

在文件server.xml里最下面</Engine>前面添加:

<Host name="test.domain.com" appBase="/var/www/test" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
</Host>

这里把test.domain.com换成你想要的二级域名,然后appBase的路径也一样就可以了。

以上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值