Linux服务器远程访问通过Tomcat部署的静态资源

news2025/1/19 20:43:43

一、安装Java和Tomcat

1.1 安装Java

  1. 下载jdk8
  2. 切换到root用户,创建文件夹/usr/local/java,将下载的jdk压缩包上传到该目录下,解压
mkdir /usr/local/java
cd /usr/local/java
rz
tar -zxvf jdk-8u351-linux-x64.tar.gz
  1. 编辑配置文件,配置环境变量,在末尾添加如下内容
export JAVA_HOME=/usr/local/java/jdk1.8.0_351/
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
  1. 重载激活配置
source /etc/profile
  1. 检查安装成功
java -version

1.2 安装Tomcat

  1. 下载tomcat
  2. 切换到root用户,创建文件夹/usr/local/tomcat,将下载的tomcat压缩包上传到该目录下,解压,修改apache-tomcat-8.5.81.tar.gz名字为tomcat8
mkdir /usr/local/tomcat
cd /usr/local/tomcat
rz
tar -zxvf apache-tomcat-8.5.81.tar.gz
mv apache-tomcat-8.0.53/ tomcat8
  1. 进入tomcat下bin目录启动tomcat,检测是否安装成功
cd /usr/local/tomcat/tomcat8/bin
./startup.sh
curl http://localhost:8080/

二、修改Tomcat配置文件

  1. 修改server.xml里的端口、ip、资源路径
cd usr/local/tomcat/tomcat8/conf
vi server.xml

把/8080 修改为 你想设置的端口号例如9999。
找到Host标签,把 name的localhost改为你服务器的公网ip。
并在和之间插入如下语句,把你想远程访问的资源放到docBase路径下。

<Context path="" docBase="/usr/local/tomcat/tomcat10/webapps/test" debug="0" reloadable="true" />
  1. 修改完后保存,重启tomcat服务
ps -ef | grep tomcat
kill -9 进程号
cd /usr/local/tomcat/tomcat8/bin
./startup.sh
# 测试一下能否本机访问
curl http://你的ip:你的端口/test/test.html

三、开放指定端口,让公网可以访问

  1. iptables
iptables -I IN_public_allow -p tcp --dport 你的端口号 -j ACCEPT
iptables -I INPUT -p tcp --dport 你的端口号 -j ACCEPT
  1. firewall
    使用 systemctl status firewalld 指令,如果显示active,说明防火墙正常运行;否则需要打开防火墙
# 检测服务状态
systemctl status firewalld
# 运行防火墙
systemctl start firewalld
# 如开启失败,先执行
systemctl unmask firewalld.service
# 再执行
systemctl start firewalld.service

开放端口

firewall-cmd --add-port=你的端口号/tcp --permanent
firewall-cmd --reload

关闭端口

firewall-cmd --remove-port=你的端口号/tcp --permanent
firewall-cmd --reload

四、修改安全组规则

登录云运营商的控制台,修改安全组规则,添加你的端口可对外访问的规则
在这里插入图片描述

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

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

相关文章

数据技术篇之数据服务

第6章 数据服务 1.服务架构演进 演进过程 DWSOA &#xff08;1&#xff09;实施原理   将业务方对数据的需求通过SOA服务的方式暴露出去。有需求驱动&#xff0c;一个需求开发一个或则几个接口&#xff0c;编写接口文档&#xff0c;开放给业务方调用。 &#xff08;2&…

[附源码]Python计算机毕业设计SSM基于WEB的心理测评系统(程序+LW)

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

【手把手教你】使用qstock进行量化回测

01qstock简介qstock由“Python金融量化”公众号开发&#xff0c;试图打造成个人量化投研分析开源库&#xff0c;目前包括数据获取&#xff08;data&#xff09;、可视化(plot)、选股(stock)和量化回测&#xff08;backtest&#xff09;四个模块。其中数据模块&#xff08;data&…

SAS中用单因素ANOVA研究不同疗法对焦虑症的有效性

本教程将介绍如何使用SAS进行单因素方差分析。 最近我们被客户要求撰写关于单因素ANOVA的研究报告&#xff0c;包括一些图形和统计输出。我们想研究不同疗法对焦虑症的有效性。我们收集了以下类别的75个主题的样本&#xff1a; 无处理&#xff08;1个n1 27&#xff09;。生物…

5W3H法与SMART原则的结合使用

5W3H 5W3H分析法&#xff0c;又称“八何分析法”。在实际工作中&#xff0c;人们常常运用5W3H分析法&#xff0c;进行顾客分析、市场需求分析&#xff0c;解决计划编制的结构问题、方向问题、执行力问题。 5W3H是描述问题的手段&#xff0c;其具体指的是&#xff1a;What&…

【图像处理】深入解析LBP算法

问题 LBP是一种常见的特征描述算法&#xff0c;用来提取局部的纹理特征&#xff0c;其原理其实很简单&#xff0c;下面我们就来看看它是怎么一回事吧。 LBP简介 LBP&#xff08;Local Binary Patterns&#xff0c;局部二值模式&#xff09;是一种很简单但很高效的局部纹理特…

2025年DMS前装搭载或突破750万辆!多方势力搅局「融合集成」

在智能驾驶功能和舱内人机交互体验不断融合演进的过程中&#xff0c;基于摄像头的DMS/OMS功能正在进入新的发展周期。而在欧洲等部分国家及地区&#xff0c;DMS的标配&#xff08;主要涉及驾驶安全的监控&#xff0c;比如&#xff0c;驾驶员疲劳、注意力分散、安全带使用、吸烟…

java工厂策略模式的开发应用

java工厂策略模式的开发应用前言准备工作具体实现测试仰天大笑出门去&#xff0c;我辈岂是蓬蒿人前言 大概内容&#xff1a; 假设我有五个车间&#xff0c;每一个车间生产不同的车子&#xff0c;想要统一管理&#xff0c;不关心哪个车间生产什么车&#xff1b;只需找一个代理…

Ajax(一)

1.客户端与服务器 1.1 服务器 上网过程中&#xff0c;负责存放和对外提供资源的电脑。 1.2 客户端 上网过程中&#xff0c;负责获取和消费资源的电脑。 2.URL地址 2.1 URL地址的概念 2.2 URL地址的组成部分 3. 分析网页的打开过程 3.1 图解客户端与服务器的通信过程 三个…

NLP学习笔记(一) RNN基本介绍

大家好&#xff0c;我是半虹&#xff0c;这篇文章来讲循环神经网络 (Recurrent Neural Network, RNN) 文章行文思路如下&#xff1a; 首先通过前馈神经网络引出为啥需要循环神经网络然后介绍循环神经网络的核心思想与运作方式最后拓展两个循环神经网络常见且常用的变体 在讲循…

Windows 7恢复分区丢失了怎么恢复?

问题&#xff1a;Windows 7恢复分区丢失 戴尔、惠普和华硕等电脑制造商现会在他们的计算机上创建一个恢复分区。恢复分区允许用户在系统出现问题时将计算机恢复到出厂默认设置。但是&#xff0c;由于丢失了恢复分区&#xff0c;因此某些用户无法将电脑恢复到出厂设置。这是一个…

析构函数可以为纯虚函数吗?纯虚函数可以有函数体吗?纯虚函数需要函数体吗?

先回答标题中中的几个问题&#xff1a; 析构函数可以为纯虚函数吗&#xff1f; yes。纯虚函数可以有函数体吗&#xff1f; yes。纯虚函数需要函数体吗&#xff1f; 一般来讲&#xff0c;如果析构函数是纯虚函数&#xff0c;那么析构函数必须要有函数体&#xff0c;如果是其它函…

Web前端大作业:基于bootstrap响应式页面,家具装修公司网站

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

最新版本APT漏洞利用工具箱

点击"仙网攻城狮”关注我们哦~不当想研发的渗透人不是好运维让我们每天进步一点点简介1.最近发现一个好用的渗透工具箱&#xff0c;基本包含最新热门漏洞exp&#xff0c;分享一下项目地址&#xff1a;https://github.com/White-hua/Apt_t00ls环境&#xff1a;jdk1.8如果双…

【深度学习】PyTorch深度学习实践 - Lecture_11_Advanced_CNN

文章目录一、GoogLe Net1.1 网络结构1.2 Inception Model1.3 11 Convolution1.4 PyTorch-GPU 实现 GoogLe Net二、Residual Net2.1 梯度消失和梯度爆炸2.2 残差模块2.3 PyTorch-GPU 实现 Simple Residual Net2.3.1 整体结构2.3.2 残差块对象2.3.3 残差网络对象2.3.4 完整代码三…

微服务框架 SpringCloud微服务架构 分布式事务 38 动手实践 38.7 案例实现TCC 模式【分析】

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式&#xff0c;系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 分布式事务 文章目录微服务框架分布式事务38 动手实践38.7 案例实现TCC 模式【分析】38.7.1 实现TCC 模式38.7.2 TCC 的空回滚 和业务悬挂38…

Redis框架(八):大众点评项目 逻辑过期时间处理缓存击穿

大众点评项目 逻辑过期时间处理缓存击穿需求&#xff1a;逻辑过期时间处理缓存击穿业务实现总结SpringCloud章节复习已经过去&#xff0c;新的章节Redis开始了&#xff0c;这个章节中将会回顾Redis实战项目 大众点评 主要依照以下几个原则 基础实战的Demo和Coding上传到我的代…

七分钟教会你如何编写一个合格的测试用例

目录 1、测试用例的基本要素 2、根据测试用例去测试带来的好处 3、测试用例的设计方法 3.1、等价类 3.2、边界值 3.3、错误猜测法 3.4、场景法 3.5、因果图法 3.6、正交排列 4、怎样判断一个测试用例是好的测试用例 1、测试用例的基本要素 测试用例是为了实施测试而向…

基于LEACH和HEED的WSN路由协议研究与改进(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客 &#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜…

Google谷歌浏览器Post请求预见strict-origin-when-cross-origin跨域问题的 解决办法

问题概述 关于这个问题&#xff0c;后端接口开发完成&#xff0c;前端功能界面和函数方法体编写完成后&#xff0c;博主在前后端联调的时候遇到的&#xff0c;接口是调用成功了&#xff0c;但是没有返回任何结果&#xff0c; 错误信息&#xff1a;“ Referrer Policy: strict-…