虚拟主机和应用部署(1)|学习笔记

简介: 快速学习虚拟主机和应用部署

开发者学堂课程【Tomcat 服务器入门详解虚拟主机和应用部署】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/654/detail/10846


虚拟主机和应用部署

 

内容介绍:

一、根目录

二、JSP WebApp 结构

三、主页实验

四、Webapp 归档格式

五、部署 Deploy

六、实验

七、配置详解

八、虚拟主机配置实验

九、Context 配置

 

一、根目录

Tomcat 这个配置是主配置文件,非常重要,里面有很多配置,尤其是虚拟主机以及路径的配置。

端口的配置比较简单,路径的配置比较复杂。不管是配置还是在写代码的时候,都应该尽量简单化。不要把复杂化,复杂容易出错。以 webapps 举例,电商网站是主站程序,主站程序里子功能模块,这里面大家可以聊天。

所以在配置的时候,会在根目录下,把 eSHOP 电商网站直接解开,直接绑电商网站进入主站目录即可子模块目录下建一个 BBS 模块解开之后,里面的代码放在 BBS 目录下。再访问逻辑访问地址时,如果不做其他映射的话,访问地址就是根 root 下的。

Tomcat 中默认网站根目录是 CATALINA_BASE/webapps/

在 Tomcat 中部署主站应用程序和其他应用程序,和之前 WEB 服务程序不同。          

nginx

假设在 nginx 中部署2个网站应用 eshop、bbs,假设网站根目录是 /ar/www/html,那么部署可以是这样的

eshop 解压缩所有文件放到 /var/www/html/ 目录下。

bbs 的文件放在 /var/www/html/bbs 下。

Tomcat

Tomcat 中默认网站根目录是 CATALINA_BASE/webapps/                                                              

在 Tomcat 的 webapps 目录中,有个非常特殊的目录 ROOT,它就是网站默认根目录。

将 eshop 解压后的文件放到这个ROOT中

bbs 解压后文件都放在 CATALINA_BASE/webapps/bbs 目录下。

每一个虚拟主机的目录都可以使用 appBase 配置自己的站点目录,里面都可以使用ROOT 目录作为主站目录。                                                                                                                        

二、JSP WebApp 目录结构

1、主页配置:一般指定为 index.jsp 或 index.html。

2WEB-INF/: 当前 WebApp 的私有资源路径,通常存储当前应用使用的 webxml和 contextxml 配置文件。

3META-INF/: 类似于 WEB-INF。

4classes/: 类文件,当前 webapps 需要的类。

5、lib/: 当前应用依赖的 jar 包。

 

三、主页实验

index 表示欢迎页是什么,欢迎页默认什么。

图片1.png

它是有顺序的HTML 在前,然后是 HTM,然后再是 JSP,可以试一下了,可以把主页改掉,直接生成一个页面,webapps。

XML 有个要求就是标签必须有斜杠,标签进行封口不允许半开半闭,要求有开有闭,而且层次不能错乱。

有时候标签会写写成 HTML浏览器渲染引擎会在渲染时发现标签数有问题,会进行纠正,按照他固定方式纠正,但这里没有纠正,直接说明配置文件错误。

文件会重新加载,可以看到主页,在里面可以填一个应用,可以在目录里面建一个东西。实际上这个主页很简单,对于归档文档,在工作中会遇到 war 包,war 包和jar 包都是使用 VIP 压缩打包的。因为纯文本好压缩,这两个包实际上用的很少。

默认情况下,/usr/local/tomcat/webapps/ROOT/ 下添加一个 indexhtml 文件,观察访问到的内容。

/usr/local/tomcat/conf/webxml中的下面

(标签)内容,

复制到 /usr/iocal/tomcat/webapps/ROOT/WEB-INF/web.xml 中。

图片2.png

结果:

配置修改后,通过强制刷新主页去观察变化。

相关文章
|
人工智能 开发者
|
数据中心 Anolis
性能优化特性之:LSE指令集编译优化
本文介绍了倚天实例上的编译优化特性:LSE,并从优化原理、使用方法进行了详细阐述。
|
存储 NoSQL 算法
实战算法篇:设计短域名系统,将长URL转化成短的URL.
小米介绍了一种实用的短域名系统设计,用于将冗长的URL转化为简短链接。短链接不仅节省空间,便于分享,还能支持数据分析。系统通过唯一编号结合62进制转换生成短标识,并利用如Redis这样的数据库存储长链接与短标识的映射关系。最后,通过302重定向实现用户访问时的长链接恢复。这一方案适用于多种场景,有效提升用户体验与数据追踪能力。
385 9
|
Python 应用服务中间件 nginx
在阿里云上部署ERPNext
ERPNext是一款开源ERP软件,由Rushabh Mehta于2010年创建,它包含了会计、库存、制造、CRM、销售、采购、项目管理,及人事管理等多个功能模块。本文主要介绍如何在阿里云上部署ERPNext。
7310 0
|
存储 C语言
C语言中a 和&a 有什么区别
在C语言中,"a" 是一个变量的名字,代表存储在内存中的某个值。而"&a" 则是获取该变量的内存地址,即变量a在计算机内存中的具体位置。这两者的主要区别在于:"a" 操作的是变量中的值,"&a" 操作的是变量的内存地址。
1953 23
|
人工智能 算法 数据安全/隐私保护
基于遗传优化的SVD水印嵌入提取算法matlab仿真
该算法基于遗传优化的SVD水印嵌入与提取技术,通过遗传算法优化水印嵌入参数,提高水印的鲁棒性和隐蔽性。在MATLAB2022a环境下测试,展示了优化前后的性能对比及不同干扰下的水印提取效果。核心程序实现了SVD分解、遗传算法流程及其参数优化,有效提升了水印技术的应用价值。
|
分布式计算 Hadoop 大数据
MapReduce的详细过程是什么?
【10月更文挑战第9天】MapReduce的详细过程是什么?
657 0
|
机器学习/深度学习 PyTorch 算法框架/工具
图像数据增强库综述:10个强大图像增强工具对比与分析
在深度学习和计算机视觉领域,数据增强是提升模型性能和泛化能力的关键技术。本文全面介绍了10个广泛使用的图像数据增强库,分析其特点和适用场景,帮助研究人员和开发者选择最适合需求的工具。这些库包括高性能的GPU加速解决方案(如Nvidia DALI)、灵活多功能的Albumentations和Imgaug,以及专注于特定框架的Kornia和Torchvision Transforms。通过详细比较各库的功能、特点和适用场景,本文为不同需求的用户提供丰富的选择,助力深度学习项目取得更好的效果。选择合适的数据增强库需考虑性能需求、任务类型、框架兼容性及易用性等因素。
1908 10
|
机器学习/深度学习 自然语言处理 数据挖掘
从理论到实践:详解GraphRAG框架下的多模态内容理解与生成
【10月更文挑战第10天】随着多媒体内容的爆炸性增长,如何有效地理解和生成跨模态的数据(如图像、文本和视频)变得越来越重要。近年来,图神经网络(GNNs)因其在处理非结构化数据方面的强大能力而受到广泛关注。在此背景下,Graph Retrieval-Augmented Generation (GraphRAG) 框架作为一种新的方法,通过结合图检索和生成模型来提升多模态内容的理解与生成效果。本文将深入探讨GraphRAG的基本原理、核心组件以及实际应用,并通过代码示例展示其在多媒体内容处理中的潜力。
1782 0
|
Linux 开发工具 数据库
【REP】hrms-ERPNext 容器安装配置
【REP】hrms-ERPNext 容器安装配置