你好,游客 登录 注册 搜索
背景:
阅读新闻

CentOS配置Nginx+Tomcat7的多站点支持

[日期:2016-12-08] 来源:Linux社区  作者:brishenzhou [字体: ]

注:以下所有操作均在CentOS 6.5 x86_64位系统下完成。

#准备工作#

在这之前需要先把Nginx和Tomcat安装好,具体见:《CentOS 6.5安装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 &quot;%r&quot; %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 &quot;%r&quot; %s %b" />
</Host>

注:在Tomcat的webapps目录下存在两个目录proj1-dir和proj2-dir,这两个目录下又分别存放.war文件解压后的Web目录(这里是为了保证两个Web目录不在同一个根目录下面

2)然后在Nginx的配置文件中配置多站点: 

# vim /usr/local/nginx/conf/nginx.conf

http {
    server {
        listen       80;
        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       80;
        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之后,就可以同时在一个服务器上支持多个域名站点访问。

更多Nginx相关教程见以下内容

CentOS 6.2实战部署Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm

CentOS 6.3下Nginx性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm

CentOS 6.3下配置Nginx加载ngx_pagespeed模块 http://www.linuxidc.com/Linux/2013-09/89657.htm

Ubuntu 16.04 LTS 上安装 Nginx、MariaDB 和 HHVM 运行 WordPress http://www.linuxidc.com/Linux/2016-10/136435.htm

Nginx安装配置使用详细笔记 http://www.linuxidc.com/Linux/2014-07/104499.htm

Linux(RHEL7.0)下安装Nginx-1.10.2 http://www.linuxidc.com/Linux/2016-10/136484.htm

Nginx日志过滤 使用ngx_log_if不记录特定日志 http://www.linuxidc.com/Linux/2014-07/104686.htm

Nginx 的详细介绍请点这里
Nginx 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-12/138041.htm

linux
相关资讯       Nginx多站点  Tomcat多站点 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款