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相关推荐

  1. Jenkins+tomcat安装笔记

    Jenins安装笔记 1.java环境 切换默认java版本为1.8 sudo update-alternatives --config java 2安装jenkins java包可以在过来镜像网站拿 ...

  2. ubuntu下安装java和tomcat安装

    前言 由于tomcat密切依赖java.在这里将java安装和tomcat安装一起介绍. 1 先卸载java (1) apt-get update (2) apt-cache search java ...

  3. ubuntu ssh是否安装mysql_ubuntu的安装及ubuntu中安装mysql和tomcat

    一.安装ubuntu 1.创建虚拟机 2.向导选择自定义 3.然后下一步再下一步,直到这里,稍后再安装系统 4.然后选择linux,注意这里下面的下拉选择Ubuntu64,因为我们下载的是64位的,如 ...

  4. centos6.4下安装配置JDK+TOMCAT+MYSQL笔记

    在公司测试环境,需要在CENTOS6.4下安装配置JDK+TOMCAT+MYSQL,下面是一个安装笔记留存备用. 一.系统环境和软件包 [root@localhost /]# uname -r 2.6 ...

  5. Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下

    Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下 一.前言 二.化繁为简 二.补充说明 三.测试ROS 是否安装成功 一.前言 最近需要学习ROS和python,于 ...

  6. Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)上

    Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)上 一.前言 二.化繁为简 三.补充说明 小结 一.前言 最近需要学习ROS和python,于是便需要装Linux系统 ...

  7. 在Ubuntu下rtorrent编译安装笔记

    为什么80%的码农都做不了架构师?>>>    rtorrent是一个Bittorrent软件,基于终端的BT客户端,高性能.低资源,另外有不少人给rtorrent开发了Web GU ...

  8. [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程

    这篇已经Out了,以[笔记] Ubuntu 18.04安装Docker CE及NVIDIA Container Toolkit流程为准. Docker的好处之一,就是在Container里面可以随意瞎 ...

  9. Tomcat安装、配置和部署笔记

    原文:http://www.cnblogs.com/Johness/archive/2012/07/20/2600937.html 首先从Apache的官方网站(http://tomcat.apach ...

最新文章

  1. Android APK反编译
  2. FishEye for Silverlight
  3. 用系统某一用户的的身份运行某一命令
  4. Benny:只处理那些NVARCHAR字段,并且NTEXT也是小于4000个字符时的情况.不管类型.只管长度....
  5. 安卓案例:基于HttpURLConnection下载文本与图片
  6. c# mvc5 view 多层_三、 添加视图View(ASP.NET MVC5 系列)
  7. 基于任务的异步模式(TAP)
  8. 服务器来电后自动开机|xfs文进系统备份恢复linux下误删除的文件
  9. 自定义事件和jQuery插件
  10. OMRON欧姆龙Sysmac Studio软件--ESI文件的安装
  11. C语言99乘法表,求指点
  12. uni-app 获取屏幕亮度与设置屏幕亮度
  13. 大龄程序员找不到工作,程序员真的是吃青春饭的吗?
  14. QQ音乐首页静态页面练习
  15. 改进left函数,截取varchar需要的字符串长度
  16. 如何做好DevOps Secrets管理
  17. 2021人工智能太湖论坛
  18. python测试工具--nose简介
  19. 【计算机基础】多媒体技术、网页制作、计算机网络
  20. 飞控学习常见典型问题集QA——无名创新(2022年4月15日)

热门文章

  1. 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作
  2. LA3029最大子矩阵
  3. 【数字信号处理】傅里叶变换性质 ( 序列傅里叶变换共轭对称性质示例 | 证明 原序列实部 x_R(n) 的 傅里叶变换 是 原序列傅里叶变换 的 共轭对称序列 )
  4. 【错误记录】Groovy 函数参数动态类型报错 ( Caught: groovy.lang.MissingMethodException: No signature of method )
  5. 【开发环境】为 Visual Studio Community 2013 版本安装中文语言包 ( 安装 Test Agents 2013 | 安装 Visual Studio 2013 简体中文 )
  6. 【Android 逆向】函数拦截 ( GOT 表数据结构分析 | 函数根据 GOT 表进行跳转的流程 )
  7. 【Android 插件化】Hook 插件化框架 ( Hook 技术 | 代理模式 | 静态代理 | 动态代理 )
  8. 【错误记录】应用运行 CPU 占用率达到 90% ( 使用 CPU Profiler 监控应用运行情况 )
  9. 【Android 热修复】热修复原理 ( 修复包 Dex 文件准备 | Dex 优化为 Odex | Dex 文件拷贝 | 源码资源 )
  10. MyBatis基本运行环境