apache2和jk和tomcat安装笔记-ubuntu
2019独角兽企业重金招聘Python工程师标准>>>
Ubuntu是个很奇怪的系统。。。安装完的路径完全和官网下载安装的不一样
Tomcat一定要用7.0.5X 别的有的不好使各种报错
环境变量里一定要有JAVA_HOME,PATH里一定包含JAVA_HOME
cat /etc/hosts
127.0.0.1 localhost
127.0.0.1 umw
127.0.0.1 192.168.0.121
网络对应关系需要把局域网ip对应本地ip
如果想获取客户端真实的ip应该添加remoteip这个模块
apt-get install apache2 libapache2-mod-jk
安装apache2和jk
Apache2的jk插件在/etc/apache2/mods-avalibale/jk.conf
而jk的workers.propertiy在/etc/libapache2-mod-jk/workers.propertiy
在property里指定java环境和多个tomcat
workers.java_home=/usr/lib/jvm/java7
worker.list=loadbalancer,jkstatus
worker.tomcat1.type=ajp13
worker.tomcat1.host=localhost
worker.tomcat1.port=8009
worker.tomcat1.lbfactor=1
worker.tomcat1.socket_keepalive=1
worker.tomcat2.type=ajp13
worker.tomcat2.host=localhost
worker.tomcat2.port=9009
worker.tomcat2.lbfactor=1
worker.tomcat2.socket_keepalive=1
worker.jkstatus.type=status
worker.loadmanager.sticky_session=True
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=tomcat1,tomcat2
这个status一定要这么写 哎 累死我了各种试
在/etc/apache2/mods-avalibale/jk.conf编辑如下
加上
JkMount /* loadbalancer
JkMount /jkstatus jkstatus
找到 Deny from all注释掉
下面改为 Allow from all
Tomcat的配置
conf目录下
编辑web.xml
最后一行</web-app>上面加上<distributable/>
(使多个session共享)
在server.xml里配置session和端口
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
这两句 第一个tomcat不用变 第二个改端口可以分别是 9090和9009,响应的端口改为9443
找到engine标签 换成一下配置
jvmRoute第二个tomcat写tomcat2
Receiver的address改为自己局域网的ip,port第二个tomcat改为4002
如果你不是在一台机器上布置两个tomcat,就不用改
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
<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="192.168.0.121"
port="4001"
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>
Apache2的配置
在/etc/apache2/apache2.conf里
空白处加
ServerName localhost:80
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml
在/etc/apache2/site-avaliable里编辑000-default.conf设置两个tomcat的虚拟主机目录
为了可以通过端口访问两个tomcat,如果不想让两个tomcat暴露的话不需要设置这个虚拟主机
<VirtualHost *:8080>
ServerAdmin webmaster@localhost
DocumentRoot /opt/tomcat5/webapps
ErrorLog /var/log/apache2/idealerror.log
LogLevel warn
CustomLog /var/log/apache2/idealaccess.log combined
<Directory "/opt/tomcat5/webapps/">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:9090>
ServerAdmin webmaster@localhost
DocumentRoot /opt/tomcat6/webapps
ErrorLog /var/log/apache2/idea2error.log
LogLevel warn
CustomLog /var/log/apache2/idea2access.log combined
<Directory "/opt/tomcat6/webapps/">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
先启动tomcat再启动apache restart
直接访问局域网地址192.168.0.121就会跳转到其中一台tomcat的主页
访问http://192.168.0.121/jkstatus就可以查看apache2的状态
然后你就可以吧项目考到tomcat的webapps目录下来(两个tomcat都要考哦),重启tomcat访问项目
Apache2的相关命令
/etc/init.d/apache2 force-reload 重载
/etc/init.d/apache2 restart 重启
a2enmod添加插件(可查看jk是否被启用)
a2dismod卸载插件
错误日志文件 在var/log/apache2文件夹中其中有mod_jk的日志文件,
也可以查看tomcat目录下的logs文件夹内的localhost_access_log.2014-12-03.txt文件来查看tomcat与apache之间的通讯信息(比较多 看的眼花缭乱的)
转载于:https://my.oschina.net/angleshuai/blog/354863
apache2和jk和tomcat安装笔记-ubuntu相关推荐
- Jenkins+tomcat安装笔记
Jenins安装笔记 1.java环境 切换默认java版本为1.8 sudo update-alternatives --config java 2安装jenkins java包可以在过来镜像网站拿 ...
- ubuntu下安装java和tomcat安装
前言 由于tomcat密切依赖java.在这里将java安装和tomcat安装一起介绍. 1 先卸载java (1) apt-get update (2) apt-cache search java ...
- ubuntu ssh是否安装mysql_ubuntu的安装及ubuntu中安装mysql和tomcat
一.安装ubuntu 1.创建虚拟机 2.向导选择自定义 3.然后下一步再下一步,直到这里,稍后再安装系统 4.然后选择linux,注意这里下面的下拉选择Ubuntu64,因为我们下载的是64位的,如 ...
- centos6.4下安装配置JDK+TOMCAT+MYSQL笔记
在公司测试环境,需要在CENTOS6.4下安装配置JDK+TOMCAT+MYSQL,下面是一个安装笔记留存备用. 一.系统环境和软件包 [root@localhost /]# uname -r 2.6 ...
- Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下
Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下 一.前言 二.化繁为简 二.补充说明 三.测试ROS 是否安装成功 一.前言 最近需要学习ROS和python,于 ...
- Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)上
Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)上 一.前言 二.化繁为简 三.补充说明 小结 一.前言 最近需要学习ROS和python,于是便需要装Linux系统 ...
- 在Ubuntu下rtorrent编译安装笔记
为什么80%的码农都做不了架构师?>>> rtorrent是一个Bittorrent软件,基于终端的BT客户端,高性能.低资源,另外有不少人给rtorrent开发了Web GU ...
- [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程
这篇已经Out了,以[笔记] Ubuntu 18.04安装Docker CE及NVIDIA Container Toolkit流程为准. Docker的好处之一,就是在Container里面可以随意瞎 ...
- Tomcat安装、配置和部署笔记
原文:http://www.cnblogs.com/Johness/archive/2012/07/20/2600937.html 首先从Apache的官方网站(http://tomcat.apach ...
最新文章
- Android APK反编译
- FishEye for Silverlight
- 用系统某一用户的的身份运行某一命令
- Benny:只处理那些NVARCHAR字段,并且NTEXT也是小于4000个字符时的情况.不管类型.只管长度....
- 安卓案例:基于HttpURLConnection下载文本与图片
- c# mvc5 view 多层_三、 添加视图View(ASP.NET MVC5 系列)
- 基于任务的异步模式(TAP)
- 服务器来电后自动开机|xfs文进系统备份恢复linux下误删除的文件
- 自定义事件和jQuery插件
- OMRON欧姆龙Sysmac Studio软件--ESI文件的安装
- C语言99乘法表,求指点
- uni-app 获取屏幕亮度与设置屏幕亮度
- 大龄程序员找不到工作,程序员真的是吃青春饭的吗?
- QQ音乐首页静态页面练习
- 改进left函数,截取varchar需要的字符串长度
- 如何做好DevOps Secrets管理
- 2021人工智能太湖论坛
- python测试工具--nose简介
- 【计算机基础】多媒体技术、网页制作、计算机网络
- 飞控学习常见典型问题集QA——无名创新(2022年4月15日)
热门文章
- 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作
- LA3029最大子矩阵
- 【数字信号处理】傅里叶变换性质 ( 序列傅里叶变换共轭对称性质示例 | 证明 原序列实部 x_R(n) 的 傅里叶变换 是 原序列傅里叶变换 的 共轭对称序列 )
- 【错误记录】Groovy 函数参数动态类型报错 ( Caught: groovy.lang.MissingMethodException: No signature of method )
- 【开发环境】为 Visual Studio Community 2013 版本安装中文语言包 ( 安装 Test Agents 2013 | 安装 Visual Studio 2013 简体中文 )
- 【Android 逆向】函数拦截 ( GOT 表数据结构分析 | 函数根据 GOT 表进行跳转的流程 )
- 【Android 插件化】Hook 插件化框架 ( Hook 技术 | 代理模式 | 静态代理 | 动态代理 )
- 【错误记录】应用运行 CPU 占用率达到 90% ( 使用 CPU Profiler 监控应用运行情况 )
- 【Android 热修复】热修复原理 ( 修复包 Dex 文件准备 | Dex 优化为 Odex | Dex 文件拷贝 | 源码资源 )
- MyBatis基本运行环境