tomcat部署虚拟主机-搭建两个应用以及httpd和Nginx的反向代理
实验环境:CentOS7
前提:已经安装好tomcat,未安装请查看http://www.cnblogs.com/wzhuo/p/7111135.html;
目的:基于主机名访问两个应用;
[root@tomcat localhost]#cd /etc/tomcat/
[root@tomcat localhost]#vim server.xml
#定义连接器的地址和端口、连接超时时长、最大并发数、是否反解ip成主机名
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000" address="172.16.252.142" maxThreads="200" enableLookups="false"
redirectPort="8443" />
#定义host虚拟主机:文件路径,是否直接解压wars文件,是否支持自动重载
<Host name="linux1.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" /> </Host>
<Host name="linux2.com" appBase="/data/apps"
unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="linux2_access_log." suffix=".log"
pattern="%h %l %u %t "%r" %s %b" /> </Host>
#linux1.com的文件路径
[root@tomcat localhost]#cd /usr/share/tomcat/webapps/
[root@webapps localhost]#ls
examples host-manager manager ROOT sample shopxx shopxx-3.0Beta #linux2的文件路径:
[root@webapps localhost]#cd /data/apps/
[root@apps localhost]#ls
test
[root@apps localhost]#ls test/
classes index.jsp lib META-INF WEB-INF
[root@apps localhost]#cat test/index.jsp
<%@ page language="java" %>
<html>
<head><title>TomcatA</title></head>
<body>
<h1><font color="red">TomcatA.magedu.com</font></h1>
<table align="centre" border="1">
<tr>
<td>Session ID</td>
<% session.setAttribute("magedu.com","magedu.com"); %>
<td><%= session.getId() %></td>
</tr>
<tr>
<td>Created on</td>
<td><%= session.getCreationTime() %></td>
</tr>
</table>
</body>
</html>
#测试:


#tomcat和Nginx部署在同一主机,Nginx只做反代:
[root@~ localhost]#yum -y install nginx-1.10.2-1.el7.ngx.x86_64.rpm
[root@~ localhost]#vim /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost; #charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main; location / {
#如果此处写的是主机名,则务必在/etc/hosts文件中进行配置
proxy_pass http://172.16.254.47:8080;
root /usr/share/nginx/html;
index index.html index.htm;
} [root@~ localhost]#nginx -t
[root@~ localhost]#systemctl start nginx
#tomcat只处理动态页面:
[root@~ localhost]#vim /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost; location / {
#页面资源的路径
root /usr/share/tomcat/webapps/ROOT;
#默认主页;不用在浏览器键入index.jsp
index index.jsp index.html index.htm;
}
#将动态资源反代
location ~* \.(jsp|do)$ {
proxy_pass http://172.16.254.47:8080;
index index.jsp index.html;
}
[root@~ localhost]#nginx -t
[root@~ localhost]#nginx -s reload

#httpd做反代:
#httpd只做反代
#使用的是proxy_http_module模块
[root@conf.d localhost]#cd /etc/httpd/conf.d/
[root@conf.d localhost]#vim tomcat-http.conf
<VirtualHost *:80>
ServerName 172.16.254.47
#关闭正向代理
ProxyRequests Off
#代理服务器地址经由头部处理
ProxyVia On
#启用反向代理
ProxyPreserveHost On
<Proxy *>
Require all granted
</Proxy>
ProxyPass / http://172.16.254.47:8080/
ProxyPassReverse / http://172.16.254.47:8080/
<Location />
Require all granted
</Location>
</VirtualHost> [root@conf.d localhost]#httpd -t
[root@conf.d localhost]#systemctl start httpd.setvice
#用proxy_ajp_module模块代理时,只需将http换成ajp,8080改成8009即可
#测试

tomcat部署虚拟主机-搭建两个应用以及httpd和Nginx的反向代理的更多相关文章
- 二十二. 安装部署Tomcat服务器、使用Tomcat部署虚拟主机、使用Varnish加速Web
web proxy web1 web2 1.安装部署Tomcat服务器 web1 1.1 使用RPM安装JDK环境 ]# yum -y install java-1.8.0-openjdk ]# ...
- 高级运维(四):Nginx常见问题处理、安装部署Tomcat服务器、使用Tomcat部署虚拟主机
一.Nginx常见问题处理 目标: 本案例要求对Nginx服务器进行适当优化,以提升服务器的处理性能: 1> 不显示Nginx软件版本号 2> 如果客户端访问服务器提示“Too many ...
- Tomcat配置虚拟主机的两种方式
1.基于主机名的虚拟主机配置 在随意盘符下建立一个目录作为虚拟地址的目录.例如:F:\virtualhost1,在其下建立 test1.html,写入内容例如:test 在tomcat/conf/se ...
- Tomcat部署虚拟主机
使用Tomcat部署加密虚拟主机,实现: a.使用www.a.com域名访问的页面根路径为/usr/local/tomcat/a/base b.使用www.b.com域名访问的页面根路径为/usr/l ...
- docker配置nginx做反向代理管理tomcat应用
由于业务开始复杂,单一tomcat已经不足以满足业务需求,多tomcat部署起来不方便而且面临域名解析问题,因此开始增加反向代理,由于docker的易用性,便使用docker管理各个应用. docke ...
- Tomcat配置虚拟主机后的登录验证码问题
先描述一下问题现象,在本地测试运行一个java web网站,一切正常.但把网站部署到Linux服务器上后,发现登录出了问题,提示验证码输入不正确.登录时需要输入验证码,而验证码的原值是先存入sessi ...
- Tomcat之虚拟主机配置以及web应用配置
Tomcat之虚拟主机配置以及web应用配置 Tomcat文件夹结构例如以下: bin ---- 启动和关闭须要的bat文件所在的文件夹 conf --- 配置文件夹 lib --- tomcat执 ...
- tomcat配置虚拟主机
在眼下,非常多server都是一台server对外能够訪问非常多个javaEE的项目,这样的实现方式就须要在tomcat里面配置虚拟主机了!以下就说说怎样配置虚拟主机: 找到tomcat的安装文件夹, ...
- javaweb学习总结十七(web应用组织结构、web.xml作用以及配置虚拟主机搭建网站)
一:web应用组织结构 1:web应用组成结构 2:安装web组成机构手动创建一个web应用程序目录 a:在webapps下创建目录web b:在web目录下创建html.jsp.css.js.WEB ...
随机推荐
- CentOS6安装DaoCloud加速器
天朝的网,你又不是不懂.我最爱的红杏最近也用不了了.FUCK GFW. 在这,我们使用DaoCloud的加速器,打开网址 https://dashboard.daocloud.io/mirror 找到 ...
- CVPR 2018paper: DeepDefense: Training Deep Neural Networks with Improved Robustness第一讲
前言:好久不见了,最近一直瞎忙活,博客好久都没有更新了,表示道歉.希望大家在新的一年中工作顺利,学业进步,共勉! 今天我们介绍深度神经网络的缺点:无论模型有多深,无论是卷积还是RNN,都有的问题:以图 ...
- 读:Instance-aware Image and Sentence Matching with Selective Multimodal LSTM
摘要:有效图像和句子匹配取决于如何很好地度量其全局视觉 - 语义相似度.基于观察到这样的全局相似性是由图像(对象)和句子(词)的成对实例之间的多个局部相似性的复合聚集,我们提出了一个实例感知图像和句子 ...
- Data Structure Binary Tree: Morris traversal for Preorder
http://www.geeksforgeeks.org/morris-traversal-for-preorder/ #include <iostream> #include <v ...
- Python 3 面向对象进阶
Python 3 面向对象进阶 一. isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的 ...
- DEDE 列表页调用如 标题,时间,简介等
以下是直接从板子中复制出来的,CSS自已根据需要写下就行.在调时简介长度不知道怎么控制,现在说下方法1. infolen='30' 这个可以2. 系统设置 >其它设置 >内容简介长度填下就 ...
- shell 脚本后台运行知识
1. bash while01.py & 把脚本放在后台执行 2. ctl + c 停止执行前台执行中的脚本(不能停止在后台运行中的脚本) 3. ctl + z 暂停执行前台 ...
- Shell中的 >/dev/null 2>&1
默认情况下,总是有三个文件处于打开状态,标准输入(键盘输入).标准输出(输出到屏幕).标准错误(也是输出到屏幕),它们分别对应的文件描述符是0,1,2 .那么我们来看看下面的几种重定向方法的区别: 1 ...
- C#实现对外部程序的调用操作
测试工具,首先也是一个C#的程序,它的主要目的是: 1:获取上文应用程序的窗口句柄,继而获取TextBox句柄及Button句柄: 2:为TextBox随机填入一些字符: 3:模拟点击Button: ...
- c#学习内容
学习winform+DevExpress 界面制作 wpf UIAutomation 控制别的程序 ok c#通过句柄控制别的程序 ok c# 截图 ok c# 多线程 ok c# 数据库myq ...