码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 浅谈Tomcat


    文章目录

    • 一、什么是Tomcat?
    • 二、Tomcat的下载安装
    • 三、使用tomcat访问资源

    一、什么是Tomcat?

    Tomcat 就是一个 HTTP 服务器。

    前面我们聊了HTTP服务器,像我们在网页输入URL,其实就是在给人家的HTTP服务器发送请求,既然有HTTP服务器,那就肯定有HTTP客户端。

    HTTP客户端,就是我们日常使用的浏览器。

    我们自己也可以搭建一个HTTP服务器,其实就是搭建网站的 ”后端部分“,本质上就是写个 TCP socket 服务器。但是会比较麻烦,有许多重复性的工作。

    因此就可以使用别人已经实现了的现成 HTTP 服务器进行网站开发,此时就不用自己从头到尾开发一个服务器了,只需要基于这些HTTP服务器进行二次开发即可。

    学习了Tomcat之后,需要能够熟练运用Tomcat的api,并且基于Tomcat开发网站后端程序。

    二、Tomcat的下载安装

    1)、打开官网下载:官网链接
    在这里插入图片描述
    在这里插入图片描述

    (上面的 Apache 是一个开源组织,开发了很多程序)
    安装好tomcat后,可以将其文件夹解压缩,看看文件夹里的目录:
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    2)、双击 start.bat ,启动 tomcat
    在这里插入图片描述
    启动成功。

    然后在浏览器中输入 127.0.0.1:8080 就可以看到 tomcat 这个欢迎界面了。
    在这里插入图片描述

    三、使用tomcat访问资源

    test.html:

    DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>testhtmltitle>
    head>
    <body>
        <h1 style="font-weight: 90%; font-size: 90px; color: aquamarine;">hello world!h1>
    body>
    html>
    

    在这里插入图片描述
    那我们如何通过 tomcat 的 http 服务器获取到这个页面,而不是直接双击本地打开呢??

    我们需要将这个页面 test.html 放到 tomcat 的 目录webapps 下的 ROOT 目录:
    在这里插入图片描述
    此时就可以通过 tomcat 的 http服务器访问本机电脑的资源了,而不再是通过
    双击打开的方式。
    在这里插入图片描述
    但是既然可以通过双击就能打开此网站,为啥还要通过http服务器访问呢?双击打开时,显示的资源只有你自己能看到,因为此资源只存在你的主机上,但是通过 tomcat ,别人就可以通过这个URL,在他自己的电脑上访问我们主机上的资源,我们也可以访问别人主机上的资源。

    但是现在如果你访问我上面这个URL :localhost:8080/test.html ,你是没办法访问到我的这个网页资源的,这是因为NAT机制,由于在不同的局域网里,ip地址能够重复,因此你没办法访问。当我将tomcat放到云服务器上时,云服务器就会提供一个公网ip,此时才能访问到。

    如果资源比较多,可以不用将文件放到 ROOT 目录下,而是在 webapps 目录下创建一个新目录,将文件放在新目录下即可。

  • 相关阅读:
    2100. 适合打劫银行的日子;2080. 区间内查询数字的频率;1774. 最接近目标价格的甜点成本
    FreeRTOS移植以及核心功能
    Django项目之美多商城遇到的问题记录与解决(一)
    Day24.1:抽象类的详解
    教你如何使用 Visual Studio IDE 正确的进行 C++ 桌面开发
    记录uniapp切换主题色能在抖音小程序上无效问题
    一文理解GIT的代码冲突
    【数据结构与算法】二叉树的基本概念
    【面试经典150 | 哈希表】字母异位词分组
    python图形界面化编程GUI(六)坦克大战(二)
  • 原文地址:https://blog.csdn.net/m0_63191002/article/details/139997785
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号