`
yaojialing
  • 浏览: 255845 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

近期公司开发了一个系统,属于一期开发阶段,需要客户那边审核。于是就有了外网访问我们内部系统的任务。总结了一下:

 

部署环境:Tomcat+路由+花生壳 步骤:
 1、申请花生壳 免费域名,并激活花生壳服务。如:test.vicp.net
 2、修改C:\Tomcat5.5\conf目录下server.xml配置文件。

【第一步】
  一般我们部署系统后都有带8080端口才能访问,那如何不输入端口就能访问系统呢?(http://localhost/test)
  如:http://www.csai.cn:80,因为浏览网页服务默认的端口号是80,所以只要输入网址,不用输入“:80”。

  .修改:<Connector port="8080" 改为 port="80"
  这样就完成了,你可以重启后尝试不输入端口了。
  
  【第二步】
  完成第一步后还只能内部访问,要想用域名来访问(http://test.vicp.net/test),设置如下:
  .进入TP-LINK路由器管理界面 > 动态DNS,选择“启动DDNS”,输入用户名密码后点击“登录”。登录成功后免费域名会显示出来。
  .进入TP-LINK路由器管理界面 > 转发规则 > 虚拟服务器,将80端口映射到服务器的局域网IP(192.168.1.52)。
  .修改:<Engine name="Catalina" defaultHost="localhost"> 改为 <Engine name="Catalina" defaultHost="test.vicp.net">
  .修改:<Host name="localhost" 改为 name="test.vicp.net"
  .进入C:\Tomcat5.5\conf\Catalina目录,新建"test.vicp.net"目录,然后把"localhost"目录下的host-manager.xml和manager.xml拷贝到"test.vicp.net"目录

 
 3、重启Tomcat,OK,发布个项目,然后让外网的人看能否访问吧。

 

-----------------------------------------------------------------------------------------------------------------------------

以上虽然实现了,但还有个别扭的地方,每次输入域名之后还要加上项目名称test,这样让人很不爽,如何只输入域名http://test.vicp.net/ 就访问系统??,配置如下:

 

 

<Host name="test.vicp.net" appBase="E:\apache-tomcat-5.5.28\apps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
       <Context path="" docBase="E:/apache-tomcat-5.5.28/apps/test"  debug="0" reloadable="true" crossContext="true"></Context>

 注意:appBase 默认是webapps,我改成了"E:\apache-tomcat-5.5.28\apps", 新建的apps这个文件夹等同于webapps,为什么这样设置,因为设置了<Context ..> 会导致Tomcat servlet加载两次。

因为test应用本来就放在Tomat的默认webapp目录下(tomcat在启动时肯定会加载1次),然后又在server.xml中做了配置,为了达到访问根就可以访问test应用(这样tomcat就又加载1次);结果,Tomcat就会加载两次。

 

解决办法:
    办法1、不要将 test 应用放在Tomat的默认部署在webapp目录下,用eclipse部署test到webapps,然后把webapps下的test剪切到apps目录,然后在server.xml中修改docBase的值为test应用在新位置的绝对路径就可以了(docBase="E:/apache-tomcat-5.5.28/apps/test");
    办法2、删除掉server.xml中 Context 的手动配置,这样就不会加载两次,因为test应用在webapp下,所以在访问时,就只能是:http://ip:port/test 这样来访问了。

 

OK,是不是一切都好了,恭喜你。

 

坏了,还是有问题,那么请看下面:

如果这样弄还会出现问题,如果出现进入系统后所有系统JSP连接都404,500错误了,这时候就需要把项目里面的JSP路径改下,如:/test/index.jsp 改成 /index.jsp,因为http://ip/这样来访问默认就加载了test名称,所以JSP中不能再有test的路径 。 

分享到:
评论

相关推荐

    apache+tomcat域名配置

    今天刚把域名配成,就把apache与tomcat的内容整合了 包括 域名配置说明 加参考文档

    使用Tomcat配置域名

    首先,我们需要理解域名配置的基本概念。域名是互联网上识别服务器的唯一标识,如www.example.com。在Tomcat中,通过Server.xml文件配置虚拟主机(Virtual Host),实现一个Tomcat实例处理多个域名的请求。 1. **...

    Tomcat安全、域名配置、等。

    二、Tomcat域名配置 1. **虚拟主机**:Tomcat支持虚拟主机,可以在同一台服务器上托管多个网站。在`conf/server.xml`的`Host`元素中配置域名,如`app1.example.com`和`app2.example.com`。 2. **端口绑定**:通过...

    tomcat 多域名配置

    以下是对"tomcat多域名配置"这一主题的详细解释。 一、为什么需要多域名配置? 在互联网中,一个IP地址可以对应多个域名,这是通过DNS(域名系统)解析实现的。在服务器端,特别是像Tomcat这样的应用服务器,为了...

    TOMCAT的域名配置

    ### TOMCAT的域名配置详解 #### 一、概述 随着互联网技术的发展,越来越多的企业和个人选择使用Tomcat作为其Web应用程序的服务器。然而,在部署过程中,尤其是对于初学者而言,经常会遇到一些基本但又十分关键的...

    Tomcat 域名设置,配置

    ### Tomcat域名设置与配置详解 #### 一、引言 Apache Tomcat 是一款开源的Servlet容器,主要用于部署Java Web应用程序。它支持最新的Servlet、JSP等规范,并且提供了简单的开发环境来部署Web应用。在实际的应用...

    nginx+tomcat多域名配置

    "nginx+tomcat多域名配置"就是一种高效且灵活的解决方案,它结合了Nginx作为前端反向代理服务器和Tomcat作为后端应用服务器的优势。下面将详细介绍这个配置的原理、步骤以及注意事项。 1. **Nginx与Tomcat的角色**...

    tomcat的域名配置

    【标题】:“Tomcat的域名配置” 在Java Web开发中,Tomcat作为一款广泛应用的开源Servlet容器,常常被用来部署和运行Web应用程序。当我们需要在一台服务器上为多个不同的网站提供服务时,就需要进行域名配置,让每...

    tomcat配置只能域名访问禁止ip访问

    tomcat配置只能域名访问禁止ip访问 直接替换tomcat里面的server.xml 文件,但是里面的ip要更换你自己的ip

    apache+tomcat域名泛解析

    通过上述配置,我们不仅能够实现Apache对于Tomcat应用的泛域名解析,还能进一步优化访问路径和目录结构,使得整个系统的管理变得更加灵活和高效。值得注意的是,在实际操作过程中还需根据具体环境调整配置细节,例如...

    配置tomcat直接输入域名访问

    配置tomcat直接输入域名访问

    tomcat 配置域名

    tomcat 配置域名 &lt;!-- appBase 是项目名,name是域名,docBase 是项目路径--&gt; &lt;Context docBase="/IGames/server/tomcat/back/" path="/back"&gt; &lt;/Host&gt;

    Linux Tomcat绑定多个域名配置

    Linux Tomcat绑定多个域名配置;里面有详情

    给tomcat 服务器配置域名

    配置域名对于将Tomcat服务器暴露在互联网上并提供服务是至关重要的。以下是一个详细的步骤指南,帮助你了解如何为Tomcat服务器配置域名。 首先,你需要拥有一个已注册的域名,例如example.com。这个域名需要指向你...

    tomcat常用配置信息详解

    - 在`server.xml`中配置`Host`元素,可以设置多个域名指向同一个Tomcat实例,每个域名有自己的`appBase`(应用目录)。 10. **部署与热更新** - `autoDeploy`:自动部署新应用或检测已部署应用的更改。 - `...

    tomcat域名和内存配置

    在Tomcat中,域名配置主要涉及网络连接器(Connector)部分,用于处理来自不同域名的HTTP请求。在`server.xml`配置文件中,你可以找到类似如下的配置段: ```xml connectionTimeout="20000" redirectPort="8443...

    tomcat 域名绑定

    Tomcat 域名绑定详解 在本文中,我们将详细讨论 Tomcat 域名绑定的相关知识点,并提供实践经验,以帮助...通过修改 Tomcat 配置文件,绑定域名到项目,并实现路由映射,我们可以将网站部署到域名上,并实现域名访问。

    tomcat域名绑定

    当涉及到“tomcat域名绑定”,我们实际上是在讨论如何配置Tomcat来处理来自不同域名的请求,并将它们映射到特定的应用程序目录。这个过程通常称为虚拟主机配置,允许在一个单一的Tomcat实例上托管多个独立的Web站点...

Global site tag (gtag.js) - Google Analytics