2010-06-08 10:44:32 aassaall 阅读数 115

实现tomcat绑定多个域名,或者多个二级域名的方法:
首先要将您的域名解析到tomcat所在的服务器上
比如您的服务器的IP为102.11.28.16;
打算在这台机器上部署三个应用,分别对应三个域名
www.eya.cc;
user.eya.cc
www.xxx.com


第一步:


将tomcat默认端口改为80
    <Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
第二步:
将tomcat的默认目录下的webapp整个拷贝出来
复制三份,对应三个应用

然后将您的三个应用的文件,全部放在webapp的root下面(先删除原来的)


第三步:
更改tomcat/conf/server.xml文件

注意,不同的host,就是不同的域名

appBase就是你拷贝出来后重新放入您的程序到root下面的的webapp

<Engine name="Catalina" defaultHost="www.eya.cc;">
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>

       <Host name="user.eya.cc" appBase="E:\\usercenter\\webapps"  unpackWARs="true" autoDeploy="true"  xmlValidation="false" xmlNamespaceAware="false">     
   </Host>
       <Host name="www.xxx.com" appBase="E:\\yule\\webapps"  unpackWARs="true" autoDeploy="true"  xmlValidation="false" xmlNamespaceAware="false">   
   </Host>
    </Engine>

这个方式简单易行。测试成功

2017-10-10 10:55:24 www203203 阅读数 378

公司使用的是tomcat 部署的web,项目经理要求,用户尽量输入少量的地址,就可以访问到我们的项目,

鉴于 之前用 80 指向 8080 443 指向 8443 我们基本实现了 输入域名即可访问webapp,


那么我们现在只需要让tomcat的默认主页换成我们自己项目的主页即可,ok开始实现

连接tomcat所在的服务器:

进入$tomcat/conf/server.xml 中修改如下:

找到<Engine name="Catalina" defaultHost="localhost">

在<Host name="localhost"  appBase="webapps"            unpackWARs="true" autoDeploy="true">下面

添加<Context path="" docBase="D:\apache-tomcat\webapps\test-webapp" debug="0" reloadable="true"/>



紧接着在$tomcat/conf/web.xml 

在文件的最后在<welcome-file-list>标签里面增加自己的主页

<welcome-file>main.ftl</welcome-file>


重启tomcat 即可查询效果



2016-12-06 09:18:11 jidetashuo 阅读数 1355

明确tomcat访问项目思路,tomcat默认访问的是webapp文件夹下面的ROOT文件夹

所以想要改变默认访问的项目有两种方式
(1)第一种方法是:将tomcat自带的ROOT文件夹删除掉,将自己的项目名称改为ROOT
(2)第二种方法是:在server.xml 中加   
<Context debug="0" docBase="xinghan-yxd-web" path="/yxd" privileged="true" reloadable="false"/>
             其中  docBase  就是指的是指向哪个项目(在webapp下面的项目)
     path 指的是 访问的名称,所以path=”/“” 标示访问的是根目录
2008-12-18 16:08:00 fjfdszj 阅读数 1762

说明:

1.首先需要有多个域名,同时指向一个IP地址。

例如:域名:www.bbb.com, www.aaa.com等等。

           解析到一个公网IP地址:210.34.120.110.

2.需要对tomcat下的conf下的"server.xml"进行配置
<Server port="8005" shutdown="SHUTDOWN">

   <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
   <Listener className="org.apache.catalina.core.JasperListener" />
   <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

   <GlobalNamingResources>
        <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>

    <Service name="Catalina">
     <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="gbk" />
      <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    <!--以下配置是关键-->
    <Engine name="Catalina" defaultHost="localhost">

      <!--默认通过localhost转发-->
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>

      <!--以下是自带的转发-->
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

      </Host>
    <!-- 在tomcat安装目录下新建文件夹aaa 与webapp同级,然后在该目录下新建Root,项目内容可放在这个位置 -->
    <Host name="www.aaa.com"  appBase="aaa"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>

   <!-- 同上,在tomcat安装目录下新建文件夹bbb与webapp同级 , 然后在该目录下新建Root,项目内容可放在这个位置  -->

     <Host name="www.bbb.com"  appBase="bbb"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
      </Host>

    </Engine>
  </Service>
</Server>
这样,就可以访问多个项目,通过不同的域名进行。

附:如果进行本地测试。则需加如下配置:

C:/Windows/System32/drivers/etc/hosts(Vista系统下路径,其他操作系统可能不一样)

# Copyright (c) 1993-2006 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

127.0.0.1     www.aaa.com

127.0.0.1     www.bbb.com

127.0.0.1     localhost

2018-08-05 13:27:26 weixin_42338186 阅读数 536

方法一:写一个空的方法,return到指定的首页(每个都要写太麻烦不推荐)

方法二:在cofig类中指定(推荐)

@Configuration
public class MyMvcConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
       // super.addViewControllers(registry);
        //浏览器发送 /atguigu 请求来到 success
        registry.addViewController("/atguigu").setViewName("success");
    }

    //所有的WebMvcConfigurerAdapter组件都会一起起作用
    @Bean //将组件注册在容器
    public WebMvcConfigurerAdapter webMvcConfigurerAdapter(){
        WebMvcConfigurerAdapter adapter = new WebMvcConfigurerAdapter() {
            @Override
            public void addViewControllers(ViewControllerRegistry registry) {
                registry.addViewController("/").setViewName("login");
                registry.addViewController("/index.html").setViewName("login");
            }
        };
        return adapter;
    }
}

注意一定要加@bean注解否则没有注入到容器里,是不会装配的。

同时页面引用的时候,记得用thymeleaf引擎。

引入样式时候,需要用th:herf="@{/webjars/........}"路径要在webjars下

Tomcat访问外部资源

阅读数 1525

负载均衡配置

阅读数 106

没有更多推荐了,返回首页