十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
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
最后一行上面加上
(使多个session共享)
在server.xml里配置session和端口
connectionTimeout="20000"
redirectPort="8443" />
这两句 第一个tomcat不用变 第二个改端口可以分别是 9090和9009,响应的端口改为9443
找到engine标签 换成一下配置
jvmRoute第二个tomcat写tomcat2
Receiver的address改为自己局域网的ip,port第二个tomcat改为4002
如果你不是在一台机器上布置两个tomcat,就不用改
channelSendOptions="8">
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
address="228.0.0.4"
port="45564"
frequency="500"
dropTime="3000"/>
address="192.168.0.121"
port="4001"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
filter=""/>
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
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暴露的话不需要设置这个虚拟主机
ServerAdmin webmaster@localhost
DocumentRoot /opt/tomcat5/webapps
ErrorLog /var/log/apache2/idealerror.log
LogLevel warn
CustomLog /var/log/apache2/idealaccess.log combined
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
ServerAdmin webmaster@localhost
DocumentRoot /opt/tomcat6/webapps
ErrorLog /var/log/apache2/idea2error.log
LogLevel warn
CustomLog /var/log/apache2/idea2access.log combined
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
先启动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之间的通讯信息(比较多 看的眼花缭乱的)