Windows环境下的Tomcat服务器安装和配置教程,包括外网远程访问的设置方法

news2024/11/16 7:44:40

文章目录

  • 前言
  • 1.本地Tomcat网页搭建
    • 1.1 Tomcat安装
    • 1.2 配置环境变量
    • 1.3 环境配置
    • 1.4 Tomcat运行测试
    • 1.5 Cpolar安装和注册
  • 2.本地网页发布
    • 2.1.Cpolar云端设置
    • 2.2 Cpolar本地设置
  • 3.公网访问测试
  • 4.结语

前言

Tomcat作为一个轻量级的服务器,不仅名字很有趣(让人想起童年),也拥有强大功能,由于其可以实现JavaWeb程序的装载,就成为配置JSP和Java系统必备的环境软件,也是开发调试JSP程序的首选。Tomcat运行稳定且开源免费,加上apache和Sun的加持即免费和开源的特性,使其广泛应用在中小型系统及并发访问用户较少的场景中。但想要让Tomcat网页能在公共互联网环境下被访问到,就需要cpolar内网穿透的协助。现在。笔者就为大家介绍,如何使用cpolar内网穿透,将Tomcat网页发布到公共互联网上。

1.本地Tomcat网页搭建

Tomcat的优势很多,为节约大家的时间,笔者就不在此冗述,直接进入Tomcat的安装设置。Tomcat作为开源免费软件,可以在其官网上找到下载(https://tomcat.apache.org)。笔者使用的操作系统为Windows,JDK版本为17。

在Tomcat官网,我们找到最新版本的下载页面,点击对应操作系统版本下载即可。

20230323091801

1.1 Tomcat安装

当所需版本的Tomcat程序文件下载完成后,就可以进行安装,首先将下载的压缩文件解压。但暂时不对其进行操作。

20230323091802

1.2 配置环境变量

下载完成后,先不着急对Tomcat进行操作,而是要对环境变量进行配置,具体为右键我的电脑点击属性,在打开的系统页面,选择高级系统设置,点击环境变量按钮进入环境变量设置。

20230323091803

20230323091804

20230323091805

2023032309180601

环境变量页面,新建一个CATALINA_HOME系统变量,做以下设置:

  • 变量名:CATALINA_HOME
  • 变量值:E:\测试软件\apache-tomcat-10.1.7【其中变量值是tomcat的解压位置,可以点击“变量值”栏位下方的“浏览目录”按钮选择路径。】

变量名和变量值设置完成后,点击确认保存。

2023032309180701

接下来选择已经存在的Path条目,点击编辑按钮,在弹出的编辑环境变量页面点击右侧的新建,将以下命令加入指令列表中,再点击确认按钮保存所做的更改。
添加的变量值为:

  • %CATALINA_HOME%\lib
  • %CATALINA_HOME%\lib\servlet-api.jar
  • %CATALINA_HOME%\lib\jsp-api.jar

2023032309180801

20230323091809

到这里,对环境变量的设置就完成了。下一步就是对tomcat进行设置

1.3 环境配置

完成环境变量设置后,我们需要对tomcat的conf文件夹下的user.xml文件进行修改,添加一个可运行的用户。

依据tomcat的解压位置,在其中找到conf文件夹,打开该文件夹,找到tomcat-user.xml文件。

20230323091810

20230323091811

找到这个文件后双击打开,并在文件最后一行添加如下代码:

<role rolename="manager-gui"/> 
<role rolename="admin-gui"/>  
<user username="admin" password="admin" roles="admin-gui"/>
<user username="tomcat" password="admin" roles="manager-gui"/>

20230323091812

代码加入后,保存并退出即可。

1.4 Tomcat运行测试

完成环境变量设置并添加了tomcat用户后,就可以打开tomcat目录下的bin文件夹,双击startup启动tomcat。

20230323091813

启动tomcat后,我们能看到tomcat通过8080端口输出,因此只要在本地电脑浏览器地址栏中,输入localhost:8080,就能打开tomcat的主页。

20230323091814

此时的tomcat还是原始状态,至于如何制作一个看起来不错的网页,就不是这篇文章的主要目的了。接下来我们要想办法为tomcat网页创建一条能够穿透内网的数据隧道,使其能被公共互联网的用户访问到。

1.5 Cpolar安装和注册

相较于tomcat的复杂设置,cpolar内网穿透的安装和使用就明显简单的多,只要登录cpolar的官网([https://www.cpolar.com/]),在主页上方找到下载按钮,并在cpolar的下载页面找到对应版本的软件下载(笔者使用的是Windows操作系统,因此选择Windows版本下载)。

20230323091815

20230323091816

Cpolar安装程序下载完成,将其解压到本地电脑,双击解压后的.msi文件,接着一路下一步就能完成安装。当然,安装期间还可以选择cpolar的安装文件夹,这也是常规操作了。

20230323091817

20230323091818

由于cpolar会为每个用户创建独立的数据隧道,并辅以用户密码和token码保证数据安全,因此我们在使用cpolar之前,需要进行用户注册。注册过程也非常简单,只要在cpolar主页右上角点击用户注册,在注册页面填入必要信息,就能完成注册。

20230323091819

20230323091820

2.本地网页发布

到这里,我们已经用tomcat创建了一个网页,并能在本地地址上访问到,提供内网穿透数据隧道的cpolar也已经安装注册。接下来,我们就可以使用cpolar创建数据隧道,将本地的tomcat发布到公共互联网上。

由于cpolar免费版的数据隧道每24小时重置一次。笔者并不想每天进行重连tomcat网页设置,因此将cpolar升级至vip版,以便能获得能长期稳定存在的内网穿透数据隧道。

2.1.Cpolar云端设置

要达到内网穿透的目的,需要先登录cpolar的官网,并在用户主页面左侧找到预留按钮,并点击进入cpolar的数据隧道预留页面。在这里生成一个公共互联网地址(也可以看做数据隧道的入口),此时这个公共互联网地址没有连接本地网页输出端口,因此也可以看做是一条空白的数据隧道。

20230323091821

在预留页面,可以看到很多种可保留的数据隧道,这里我们选择保留二级子域名栏位。当然,如果自己有域名的,也可以选择保留自定义域名栏位,但需要在域名供应商处对自有的域名进行解析,才能与cpolar配合使用。

20230323091822

保留二级子域名栏位,需要进行几项信息的简单设置:

  • 地区:服务器所在区域,就近选择即可
  • 二级域名:会最终出现在生成的公共互联网地址中,作为网络地址的标识之一
  • 描述:可以看做这条数据隧道的描述,能够与其他隧道区分开即可

完成这几项设置后,就可以点击右侧的保留按钮,将这条数据隧道保留下来。

20230323091823

20230323091824

当然,如果这条数据隧道不打算再使用,还可以点击右侧的x将其轻松删除,节约宝贵的隧道名额。

2.2 Cpolar本地设置

完成cpolar云端的设置,保留好空白数据隧道后,就能返回本地电脑的cpolar客户端,将云端生成的空白数据隧道与本地的支付宝测试页面连接起来,让我们能在公共互联网上访问到tomcat的网页页面。

在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式),点击客户端主界面左侧隧道管理项下的创建隧道按钮,进入本地隧道创建页面(如果要创建没24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。

在这个页面,同样需要进行几项信息设置,这些信息设置包括:

  1. 隧道名称 – 可以看做cpolar本地的隧道信息注释,只要方便我们分辨即可;
  2. 协议 – tomcat输出的是web网页,因此选择http协议;
  3. 本地地址 – 本地地址即为本地网站的输出端口号,而tomcat默认输出端口为8080,因此这里也填入8080;
  4. 域名类型 – 在这个例子中,我们已经在cpolar云端预留了二级子域名的数据隧道,因此勾选“二级子域名”(如果预留的是自定义域名,则勾选自定义域名),并在下一行“Sub Domain”栏中填入预留的二级子域名,这里我们填入“tomcattest”(如果只是创建临时数据隧道,则直接勾选“随机域名”,由cpolar客户端自行生成网络地址);
  5. 地区 – 与cpolar云端设置时一样,我们依照实际所在地就近填写;

20230323091825

完成cpolar客户端与cpolar云端的数据隧道连接后,cpolar客户端会自动跳转至隧道管理项下的隧道列表页面,我们可以在这个页面看到数据隧道的状态(是否畅通),或是控制隧道的开启、关闭或删除。如果需要对隧道的信息进行变更,也可以通过这里的“编辑”按钮进行

20230323091826

而这条数据隧道的公共互联网地址,则可以在状态——在线隧道列表页面看到。

20230323091827

3.公网访问测试

我们将cpolar内网穿透生成的公共互联网地址,粘贴到其他电脑的浏览器地址栏中,就能看到能够显示本地电脑上的tomcat网页。也就意味着我们已经成功的使用cpolar内网穿透,将本地tomcat网页发布到公共互联网上。

20230323091828

4.结语

虽然看起来这篇文章很长,但实际操作起来,也就会在tomcat设置环境变量时耽搁一会儿,而cpolar的数据隧道设置部分很快就可以操作完成。其实不止tomcat,换做其他web服务器,只要知道软件(网页)的输出端口,都可以使用cpolar创建穿透内网的数据隧道,将这个软件(网页)发布到公共互联网。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/958102.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【算法与数据结构】617、LeetCode合并二叉树

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;采用递归的方式遍历二叉树&#xff0c;【算法与数据结构】144、94、145LeetCode二叉树的前中后遍历&am…

手机提词器怎么开启?这些方法不要错过

随着科技的发展&#xff0c;手机提词器成为了越来越多人写作的好帮手。在很多情况下比如直播、视频会议我们不方便一边看镜头一边看文稿&#xff0c;这种时候我们就需要使用提词器功能来规避麻烦了&#xff0c;如何开启手机提词器&#xff1f;有哪些需要注意的事项呢&#xff1…

常见变频器品牌-修改参数时的密码汇总

常见变频器品牌-修改参数时的密码汇总 1. 艾默生TD3000系列 密码:8888 2. 艾默生TD3300系列 密码:2002 3. 施耐德变频器 在SUP菜单下,找到COD选项进入,输入6969即可, 4. 台达变频器-B系列 密码:57522 5. 台达变频器-H系列 密码:33582 6. 台达S1系列 密码:57522

网络渗透day6-面试01

&#x1f609; 和渗透测试相关的面试问题。 介绍 如果您想自学网络渗透&#xff0c;有许多在线平台和资源可以帮助您获得相关的知识和技能。以下是一些受欢迎的自学网络渗透的平台和资源&#xff1a; Hack The Box: Hack The Box&#xff08;HTB&#xff09;是一个受欢迎的平…

深度学习-4-二维目标检测-YOLOv3模型

单阶段目标检测模型YOLOv3 R-CNN系列算法需要先产生候选区域&#xff0c;再对候选区域做分类和位置坐标的预测&#xff0c;这类算法被称为两阶段目标检测算法。近几年&#xff0c;很多研究人员相继提出一系列单阶段的检测算法&#xff0c;只需要一个网络即可同时产生候选区域并…

简单深度理解c++数论--资料免费分享

本篇博文想分享一个数论资料,是帮助大家简单深度理解c数论. 作者承诺&#xff1a;分享的东西没有病毒&#xff0c;是资料。 分享的东西是关于数论的。 分享的东西免费&#xff01;免费&#xff01;免费&#xff01;欢迎大家下载学习&#xff01; 创作不易&#xff0c;请多加…

django中配置使用websocket终极解决方案

django ASGI/Channels 启动和 ASGI/daphne的区别 Django ASGI/Channels 是 Django 框架的一个扩展&#xff0c;它提供了异步服务器网关接口&#xff08;ASGI&#xff09;协议的支持&#xff0c;以便处理实时应用程序的并发连接。ASGI 是一个用于构建异步 Web 服务器和应用程序…

若依tab-content面板失效、使用load的解决方法(附详细步骤)

【版权所有&#xff0c;文章允许转载&#xff0c;但须以链接方式注明源地址&#xff0c;否则追究法律责任】【创作不易&#xff0c;点个赞就是对我最大的支持】 前言 仅作为学习笔记&#xff0c;供大家参考 总结的不错的话&#xff0c;记得点赞收藏关注哦&#xff01; 思路&…

智慧工地-工地管理系统源码

智慧工地是聚焦工程施工现场&#xff0c;紧紧围绕人、机、料、法、环等关键要素&#xff0c;综合运用物联网、云计算、大数据、移动计算和智能设备等软硬件信息技术&#xff0c;与施工生产过程相融合。 智慧工地管理平台充分运用数字化技术&#xff0c;聚焦施工现场岗位一线&am…

剑指 Offer 14- I. 剪绳子(中等)

题目&#xff1a; class Solution { public:int cuttingRope(int n) {vector<int> dp(n1); //dp[i]表示长度为i的绳子能得到的最大乘积dp[0]0;dp[1]0;dp[2]1; //长度为0和1的绳子不能剪不了for(int i3;i<n;i){for(int j1;j<i/2;j){ //j代表这一次剪…

K8s组件全解析,你需要知道的一切秘密

当你部署完 Kubernetes&#xff0c;便拥有了一个完整的集群。 Kubernetes&#xff0c;作为目前最流行和广泛采用的容器编排和管理平台&#xff0c;背后有一系列强大的组件&#xff0c;共同协作以实现容器化应用的自动化部署、弹性扩展、服务发现和负载均衡等关键功能。本文将介…

环保环卫行业案例 | 燕千云助力高能环境搭建数智化IT服务管理体系及平台

当前环境卫生问题在全球已引起前所未有的关注&#xff0c;而促进健康又成为环境与发展所关注的核心问题。随着数字化时代的到来&#xff0c;环保环卫行业呈现出多个发展趋势&#xff0c;随着业务系统规模的不断扩大&#xff0c;信息系统的运维问题也日益突出&#xff0c;需要得…

Linux6.41 Kubernetes 对外服务之 Ingress

文章目录 计算机系统5G云计算第三章 LINUX Kubernetes 对外服务之 Ingress一、Ingress 简介1.NodePort2.LoadBalancer3.externalIPs4.Ingress 二.Ingress 组成1.ingress2.ingress-controller3.总结 三、Ingress-Nginx 工作原理四、ingress 暴露服务的方式1.DaemonSetHostNetwor…

详解排序算法(附带Java/Python/Js源码)

冒泡算法 依次比较两个相邻的子元素&#xff0c;如果他们的顺序错误就把他们交换过来&#xff0c;重复地进行此过程直到没有相邻元素需要交换&#xff0c;即完成整个冒泡&#xff0c;时间复杂度。 比较相邻的元素。如果第一个比第二个大&#xff0c;就交换它们两个&#xff1b;…

MATLAB中circshift函数转化为C语言

背景 有项目算法使用matlab中circshift函数进行运算&#xff0c;这里需要将转化为C语言&#xff0c;从而模拟算法运行&#xff0c;将算法移植到qt。 MATLAB中circshift简单介绍 circshift是循环移位函数。可以使用于数组和矩阵元素的循环移位。 当A是数组 Bcircshift(A,p);如果…

大模型时代,如何以 SDS 助力 AI 发展?

本文根据 XSKY星辰天合产品总监赵琳在 2023 闪存峰会上的演讲。该峰会主题为“芯存储 AI 未来”&#xff0c;由 DOIT 传媒主办、杭州华澜微电子股份有限公司协办&#xff0c;于 8 月 29-30 日在杭州召开。 星辰天合产品总监赵琳在 2023 闪存峰会上发表演讲 人工智能已经从经典…

aac音频格式怎么转mp3?这种转换方法很简单

AAC格式和MP3格式都是数字音频格式&#xff0c;但它们使用不同的音频压缩算法。虽然AAC格式在音质和文件大小方面表现出色&#xff0c;但是不是所有的设备都支持该格式。相比之下&#xff0c;MP3格式的兼容性更好&#xff0c;可以在各种设备和操作系统上播放&#xff0c;因此转…

深入浅出:手把手教你实现单链表

一、什么是链表 链表是一种链状数据结构。简单来说&#xff0c;要存储的数据在内存中分别独立存放&#xff0c;它们之间通过某种方式相互关联。 如果我们使用C语言来实现链表&#xff0c;需要声明一个结构体作为链表的结点&#xff0c;结点之间使用指针关联。 二、单向链表的结…

软件测试(黑盒测试、白盒测试、灰盒测试)

软件测试方法大类上分为黑盒测试、白盒测试和灰盒测试三种 一、黑盒测试 黑盒测试通俗来说即不知道代码是怎么写的。具体实现逻辑&#xff0c;基于代码输入有哪些应该输出什么进行测试的方法。其方法有&#xff1a;基于直觉和经验的方法&#xff08;IEBT&#xff09;、基于需…