使用tomcat 部署网站

简介: 1.运行与停止 bin/目录下的startup.sh用于启动服务。其他XXXX.sh 见名知意。 图1-1 tomcat默认主页 2.指定jvm参数启动tomcat 问:有时web应用依赖的库较多,加载的类也多,它们会占用永久代空间,容易出现 tomcat permSpace outOfMemory 异常,怎么解决? 答:linux下环境变量相关知识见: http:

1.运行与停止

bin/目录下的startup.sh用于启动服务。其他XXXX.sh 见名知意。

图1-1 tomcat默认主页

2.指定jvm参数启动tomcat

微笑问:有时web应用依赖的库较多,加载的类也多,它们会占用永久代空间,容易出现 tomcat permSpace outOfMemory 异常,怎么解决?
答:linux下环境变量相关知识见:  http://blog.csdn.net/chuchus/article/details/42835897
startup.sh会调用catalina.sh,而后者中会用JAVA_OPTS这个环境变量,在280行左右(tomcat version:7),见图1-2

图2-1 tomcat启动脚本中涉及java_OPTS环境变量的部分

这个变量默认是空的,需要我们定。可以使用export 命令引入"-XX:MaxPermSize=256m "参数。
具体命令为:  export JAVA_OPTS=“-XX:MaxPermSize=256m” 注意等号左右不能有空格。成功后可以验证,见图2-2

图2-2 设置JVM参数启动tomcat

3.tomcat配置文件

conf/server.xml

该配置文件的第68行配置了服务端口,Tomcat的默认服务端口是8080,可以修改。如果需要让tomcat在多个端口同时提供服务,只需要复制<service>标签,并修改端口等相应参数。

阿里云服务器centos 7直接改为80也是可以的,并不需要调整防火墙。


conf/tomcat-users.xml

指定管理员角色与用户名密码,用于可视化远端管理你的webApp。例子:

  <role rolename="manager-gui"/> 
  <user username="tomcatUser" password="tomcatPsd" roles="manager-gui"/>

地址为 http://host/index.jsp


图2 可视化部署应用



web应用配置文件

webapp/YOURNANE/WEB-INF/ web.xml

<welcome-file-list>
此标签用来配置首页。如
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
上面的配置信息指定该web应用的首页依次是index.html、index.jsp这几个网页。
<context-param>  
这些参数在整个应用中被共享
<context-param>  
           <param-name>context/param</param-name>  
           <param-value>avalible during application</param-value>  
</context-param>  

<servlet> 
用来配置服务端的程序,可以配置多个。
<servlet>  
    <servlet-name>MainServlet</servlet-name>  
    <servlet-class>com.wes.controller.MainServlet</servlet-class>  
    <init-param>       //写在配置中的一些参数,仅这个servlet可以访问
       <param-name>param1</param-name>  
       <param-value>avalible in servlet init()</param-value>  
    </init-param>  
    <load-on-startup>1</load-on-startup>  //启动次序,1表示最先
</servlet>  

读取context-param与servlet-param的代码
import javax.servlet.ServletException;  
import javax.servlet.http.HttpServlet;
public class MainServlet extends HttpServlet{    
    public void init() throws ServletException ...{  
         System.out.println("下面参数param1是在servlet中存放的");  
         System.out.println(this.getInitParameter("param1"));  
         System.out.println("下面的参数是存放在servletcontext中的");  
        System.out.println(getServletContext().getInitParameter("contextParam123"));  
      }  
}  
<filter>
用来过滤,接受请求时过滤后送给servlet,将servlet返回结果再过滤一次返回给用户。
	<filter>
		<filter-name>WebServiceFilter</filter-name>
		<filter-class>com.likeyichu.webservice.filter.WebServiceFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>WebServiceFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

不同标签之间的次序
有时eclipse会对web.xml文件报错,如图:
图3 web.xml中的标签次序
很可能的原因就是标签之间的次序不对,按照它提示的次序放标签就可以了。

最简单的网页部署

在 webapps\下放一个文件夹A,里面有B.html  那么重新启动tomcat后,输入  http://ip:port/A/B.html即可访问。
网页放到\webapps\ ROOT\目录下,效果就是http://ip:port/xx.html这种URL路径。
换html网页时不需要重启Tomcat服务。

Jsp/Servlet部署

假设你的webapp名称为qing,那么部署目录结构见下图:

图4  web应用目录结构
若干个 jsp文件放在qing\目录下即可。
jsp文件用到了其他java依赖类,需要放在lib\或classes\目录中。
classes目录下放的是后缀为.class的文件,类com.likeyichu.A的class文件就应该在classes\com\likeyichu\A.class位置。
lib目录也是用来存放用到的java类的,要放在这里的是.jar文件。

对于javaWeb而言,WEB-INF是一个特殊的文件夹,Web容器会包含该文件夹下的内容,但客户端浏览器无法访问WEB-INF路径下的任何内容
web.xml位于WEB-INF文件夹内,


目录
打赏
0
0
0
0
14
分享
相关文章
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
63 23
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
58 22
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
73 25
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
211 26
部署tomcat部署实战案例
本文是关于Tomcat部署实战案例的教程,包括通过yum和二进制方式部署Tomcat的详细步骤,以及如何监控Tomcat服务。
244 84
部署tomcat部署实战案例
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
docker应用部署---Tomcat的部署配置
这篇文章介绍了如何使用Docker部署Tomcat服务器,包括搜索和拉取Tomcat镜像、创建容器并设置端口映射和目录映射,以及如何创建一个HTML页面并使用外部机器访问Tomcat服务器。
docker应用部署---Tomcat的部署配置
tomcat学习二:tomcat部署多个项目:不修改端口和修改端口 两种方式详解
这篇文章详细介绍了在Tomcat服务器上部署多个项目的方法,包括不修改端口和修改端口两种方式。
274 0
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
这篇文章介绍了在Docker中安装Tomcat的过程,包括搜索Tomcat镜像、拉取镜像、目录挂载的准备、创建并挂载容器,以及如何进入容器和进行测试。文中还说明了如何将WAR包部署到Tomcat服务器并访问部署的应用。
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等