CentOS配置Nginx+Tomcat7的多站点支持
注:以下所有操作均在CentOS 6.5 x86_64位系统下完成。
#准备工作#
在这之前需要先把Nginx和Tomcat安装好,具体见:《CentOS安装Nginx-1.6.2+安全配置》、《CentOS安装Tomcat-7.0.57+启动配置+安全配置+性能配置》。
#Nginx+Tomcat7多站点的配置#
假设现在项目有两个站点, 分别是proj1和proj2,其对应的域名分别是proj1.com和proj2.com。
1)首先配置Tomcat的server.xml文件:
# vim /usr/local/tomcat/conf/server.xml <Host name="proj1.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Alias>proj1.com</Alias>
<Alias>www.proj1.com</Alias>
<Context path="" reloadable="true" docBase="proj1-dir/proj1" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="proj1_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="proj2.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Alias>proj2.com</Alias>
<Alias>www.proj2.com</Alias>
<Context path="" reloadable="true" docBase="proj2-dir/proj2" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="proj2_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
注:在Tomcat的webapps目录下存在两个目录proj1-dir和proj2-dir,这两个目录下又分别存放.war文件解压后的Web目录(这里是为了保证两个Web目录不在同一个根目录下面)
2)然后在Nginx的配置文件中配置多站点:
# vim /usr/local/nginx/conf/nginx.conf
http {
server {
listen ;
server_name proj1.com www.proj1.com;
index index.jsp;
root /usr/local/tomcat/webapps/proj1-dir/proj1;
location / {
proxy_pass http://www.proj1.com:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
access_log /data/logs/proj1.access.log;
}
server {
listen ;
server_name proj2.com www.proj2.com;
index index.jsp;
root /usr/local/tomcat/webapps/proj2-dir/proj2;
location / {
proxy_pass http://www.proj2.com:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
access_log /data/logs/proj2.access.log;
}
}
至此,Nginx+Tomcat7多站点配置完毕。启动Tomcat和Nginx之后,就可以同时在一个服务器上支持多个域名站点访问。
CentOS配置Nginx+Tomcat7的多站点支持的更多相关文章
- wampserver下配置虚拟主机 实现多站点支持
wampserver下配置虚拟主机 实现多站点支持 wampserver是由德国人开发,在windows环境下实现apache+php+mysql的一款集成环境软件,wampserver自带SQLit ...
- 在centos配置nginx+php的环境
环境版本:centos6.8/nginx1.10.2/php5.6.29 ====================安装nginx1.10.2==================== #根据centos ...
- 阿里云centos配置nginx和nodejs
今天新买了阿里云,想把网站跑起来,于是记录跑起来的过程 1.购买域名 2.购买解析 3.购买ecs主机 4.ssh登录主机 5.安装vsftpd 6.配置ftp用户.文件夹.权限 7.安装nginx/ ...
- CentOS7系统下配置nginx及https安全站点
本文主要演示在CentOS7系统下OpenSSL的使用方式,以及Nginx在测centOS下的证书配置方式 注意:生成服务器端证书时必须在CN字段中如实输入站点的访问地址 ,如果是域名就写域名,ip访 ...
- centos配置虚拟主机virtualhost,让服务器支持多网站多域名(转)
如何让centos(redhat)配置虚拟主机,让服务器支持多个网站,针对Apache,只需要你修改apache配置文件/etc/httpd/conf/httpd.conf即可. 里面有个exampl ...
- CentOS配置Nginx官方的Yum源
由于yum源中没有我们想要的nginx,那么我们就需要创建一个"/etc/yum.repos.d/nginx.repo"的文件,其实就是新增一个yum源. [root@niaoyu ...
- Centos配置nginx反向代理8090端口到80端口
下面,我就来说说怎么反向代理自己的项目到默认80端口. 1)安装nginx:yum install nginx -y 2)启动nginx:service nginx start或者systemctl ...
- centos下配置nginx支持php
添加nginx 默认主页index.php vim .../etc/nginx/conf.d/default.conf location / { root /usr/share/nginx/htm ...
- CentOS 中 配置 Nginx 支持 https
一.基础设置: .yum -y update .yum -y install openssl* .cd /usr/local/nginx/conf .mkdir ./ssl .cd ./ssl # 在 ...
随机推荐
- Ftp上传下载 C#
public class MyFtpClass { private readonly string _destIp; private readonly string _userName; privat ...
- Linux基础知识之文件和目录的权限机制
Linux中的用户 Linux中的用户有三类,分别是: 所有者(u) 同组用户(g) 其他人(o) 如下图所示,假设存在两个组:groupA和groupB,rachel和ross属于组groupA,m ...
- 自己实现简单的AOP(一)简介
AOP 和 OOP,在我看来是两种相辅相成的技术,作为OOP的补充,AOP 有着自己特殊的应用场景. 假设,我们需要在Service层实现以下几项基本功能: /// <para>1.自动管 ...
- SqlServer -- char与varchar、nchar、N
一.char与varchar 带var的表示的是:可变长度,会根据实际存储数据的大小动态重新分配存储空间,相对来说节省存储空间. 不带var的表示的是:固定长度,存储3字符也是要占用10个字节的,会自 ...
- 疯狂Android讲义 - 学习笔记(三)
Android的事件处理 3.1 Android提供了两套事件处理机制:基于监听的事件处理.基于回调的事件处理. 3.2 基于监听的事件处理 3.2.1 监听的处理模型 主要涉及三类对象:Event ...
- MyEclipse10查看Struts2源码及Javadoc文档
1:查看Struts2源码 (1):Referenced Libraries >struts2-core-2.1.6.jar>右击>properties. (2):Java Sour ...
- Eclipse如何发布web项目
目录结构: // contents structure [-] 需要的环境 下载和配置JDK 下载和配置Tomcat 下载Eclipse Eclipse 4.4.0 发布Web步骤 创建server ...
- JS全屏漂浮广告、移入光标停止移动
点击这里查看效果 以下是代码: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Ty ...
- 【grunt第二弹】30分钟学会使用grunt打包前端代码(02)
前言 上一篇博客,我们简单的介绍了grunt的使用,一些基础点没能覆盖,我们今天有必要看看一些基础知识 [grunt第一弹]30分钟学会使用grunt打包前端代码 配置任务/grunt.initCon ...
- Vi (Unix及Linux系统下标准的编辑器)VIM (Unix及类Unix系统文本编辑器)
Vi是Unix及Linux系统下标准的编辑器.学会它后,您将在Linux的世界里畅行无阻.基本上vi可以分为三种状态,分别是命令模式.插入模式,和底行模式. vi编辑器是所有Unix及Linux系统下 ...