tomcat部署项目访问
A. tomcat项目部署后,能访问localhost:8080/项目/xxx.jsp等文件,就是不能访问xxx.do
1.如果是struts的话,你看下有没有配置对应的servelet或filter.应该是.do这种东西没有拦截住。检验下struts的配置文件。
2.或者是自己实现的servelet。都是需要配置上过滤.do这种格式的url的。
B. tomcat部署项目的几种方式
一、静态部署
1、直接将web项目文件件拷贝到webapps 目录中
Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将JSP程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到。具体如何打包,可以使用许多开发工具的IDE环境,如Eclipse等。也可以用 cmd 命令:jar -cvf mywar.war myweb
webapps这个默认的应用目录也是可以改变。打开Tomcat的conf目录下的server.xml文件,找到下面内容:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
将appBase修改即可。
2、在server.xml中指定
在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建一个Context,内容如下。
在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加:
<Context path="/hello" docBase="D:\ workspace\hello\WebRoot" debug="0" privileged="true">
</Context>
或者
<Context path="/myapp" reloadable="true" docBase="D:\myapp" workDir="D:\myapp\work"/>
或者
<Context path="/sms4" docBase="D:\workspace\sms4\WebRoot"/>
说明:
path是虚拟路径;
docBase 是应用程序的物理路径;
workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;
debug 则是设定debug level, 0表示提供最少的信息,9表示提供最多的信息
privileged设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet
reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署
antiResourceLocking和antiJARLocking 热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。
3、创建一个Context文件
在conf目录中,新建 Catalina\localhost目录,在该目录中新建一个xml文件,名字不可以随意取,要和path后的那个名字一致,按照下边这个path的配置,xml的名字应该就应该是hello(hello.xml),该xml文件的内容为:
<Context path="/hello" docBase="E:\workspace\hello\WebRoot" debug="0" privileged="true"></Context>
tomcat自带例子如下:
<Context docBase="${catalina.home}/server/webapps/host-manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>
这个例子是tomcat自带的,编辑的内容实际上和第二种方式是一样的,其中这xml文件名字就是访问路径,这样可以隐藏应用的真实名字。
4、注意:
删除一个Web应用同时也要删除webapps下相应的文件夹和server.xml中相应的Context,还要将Tomcat的conf\catalina\localhost目录下相应的xml文件删除,否则Tomcat仍会去配置并加载。。。
二 动态部署
登陆tomcat管理控制台:http://localhost:8080/,输入用户名和密码后便可管理应用并动态发布。
在Context Path(option):中输入/yourwebname ,这代表你的应用的访问地址。
XML Configration file URL中要指定一个xml文件,比如我们在F:\下建立一个hmcx.xml文件,内容如下: <Context reloadable="false" />其中docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在WAR or Directory URL:中键入F:\hmcx即可,然后点击Deploy按钮,上面就可以看到了web应用程序,名字就Context Path(option):中的名字。
如果部署.war文件还有更加简单的方式,下面还有个Select WAR file uploae点击浏览选择.war文件,然后点击Deploy也可以。
C. 关于apache+tomcat集群产品项目部署与访问问题;
可以apache做为反向代理服务器,多个tomcat作为应用服务器。使用apache监听80端口,主要使用在域名绑定上,因为域名只能绑定80端口,但是一台服务器上可能有多个tomcat或者只有一个公网ip,这样不同域名可以都跳转到该公网ip的80端口,因为apache监听了80端口,所有其实所有域名都是先访问的apache,apache再通过反向代理将不同域名的请求到不同的tomcat地址,这里的tomcat地址就可以使用内网地址了。甚至是不同服务器的,只要apache所在的这台服务器能够访问到你的tomcat地址就可以。
<VirtualHost *:80>
ProxyPreserveHost On
ServerAdmin [email protected]
ServerName test1.ebiaoji.com
DirectoryIndex index.do index.html index.php
ProxyPass / http://127.0.0.1:81/
ProxyPassReverse / http://127.0.0.1:81/
</VirtualHost>
<VirtualHost *:80>
ProxyPreserveHost On
ServerAdmin [email protected]
ServerName test.ebiaoji.com
DirectoryIndex index.do index.html index.htm
ProxyPass / http://192.168.1.3:8087/
ProxyPassReverse / http://192.168.1.3:8087/
</VirtualHost>
例如上方,域名test1.ebiaoji.com和test.ebiaoji.com都绑定了同一个公网ip,但在访问时,test1.ebiaoji.com会访问这台服务器的81端口监听的服务(tomcat),test.ebiaoji.com会访问到内网中的192.168.1.3服务器8087端口的服务(tomcat);
D. tomcat在本机部署了一个项目如何让外网的人来访问
你要先看看你的IP地址是公网还是内网
只有 内网才可以
你可以吧你的工程发布到tomcat服务器上
开启tomcat服务
别人通过IP+端口号还有 工程名 就可以了
E. 我在tomcat部署了个项目,能用localhost访问,但是不能本机IP或127.0.0.1访问 .请知道原因不吝赐教
首先你出现的问题,不能用127.0.0.1访问Tomcat,那么你所用的Tomcat版本百分之八九十应该是6以下的。因为这个问题的根本原因是Tomcat在启动时,如果检测到系统支持IPV6,那么默认监听的是IPV6地址的端口,导致通过IPV4无法访问。不过在6(含6)以后的版本中这个问题Tomcat已经解决了,不用使用者自己再去设置了。那么目前的解决办法就是你所了解到的那样设置一下参数就好了。
其次,你说查看tomcat地址绑定怎么查看是到IPv4还是IPv6,你用的是netstat -n这个命令,这个执行结果中是看不到Tomcat端口的,要用netstat -a -n这个命令,然后找到你Tomcat的端口,端口前面的内容要是0.0.0.0,就是绑定到IPv4;如果端口前面的内容是[::]:或者有两个冒号的,就是绑定到IPv6的。注意命令netstat -a -n执行前确保Tomcat是启动状态的哦。
我也是看了你的资料,然后网上查了一下,感谢你还有以下的知识分享:
www.cnblogs.com/xiaoluo501395377/archive/2013/08/07/3243576.html
blog.csdn.net/jdfkldjlkjdl/article/details/40053655
另外有关于localhost和127.0.01的区别,可以看看这个:
localhost与127.0.0.1的区别
F. linux tomcat部署项目,tomcat自带项目可以访问,也iptables -F 了,但是自己的项目404
结合你说的和404错误,我认为你的项目无法访问的原因应该是部署的项目路径不对,你可以网络查询如何修改tomact的项目路径,修改下你的tomcat的启动路径试试。
G. 如何让外网访问自己部署在tomcat上的web项目,我是学校的内网
如果你的学校内网可以连接外网,就按下面部署, 连接不上的话就别想了。
1、 首先 安装jdk,复制tomcat绿色版(或安装版)到指定目录,配置环境变量。分别测试是否配置成功:jdk 运行cmd 输入 java -version。 Tomcat 浏览器输入网址:http://localhost:8080。
2、部署tomcat:把项目路径到WebRoot 文件夹 复制到tomcat/conf/Catalina/localhost/ROOT.xml中,打开ROOT.xml 其中 docBase="" 这个引号里面就是你刚才复制的WebRoot路径;
保存之后启动 startup.bat 就可以访问了,http://(项目电脑ip):8080 就可以
H. 在tomcat里的项目怎么访问正常的写的demo.jsp能正常访问
需要把项目部署到tomcat里才可以访问的
找到菜单window→ShowView→Servers,打开Servers视图标签,部署的Tomcat服务
在新打开的对话框中,有一个Project项,选择要部署的项目
点击“Finish”完成部署
这样项目就部署到Tomcat里面去了
I. web项目部署在我的电脑上的tomcat中,怎样让其他用户访问我的项目
局域网的话 对方浏览器输入
http://你的ip(可以通过ipconfig查):tomcat端口号(默认8080)/项目名。