当前位置: 首页 > news >正文

初识Web服务器

一、web服务器

1、什么是web服务器?

web服务器就是web项目的容器,我们将开发好的web项目部署到web容器中,才能使用网络中的用户通过浏览器进行访问。

 一张图带你了解web服务器有啥作用:

在我的电脑上有一个已经做好的项目,但是只能我自己访问别人的计算机是访问不到的。这时我们就得把项目放到web服务器上面,当访问者输入地址就能被访问到了,并响应数据给客户端。 

 2、静态资源和动态资源

web项目中的资源根据其特性可以分为两类:

  • 静态网页:网页界面中的数据始终保持不变(html/css/js/图片)
  • 动态网页:网页中的数据根据用户不同的请求可以发生变化,也就是说网页中的数据是由程序根据用户的请求意图动态产生的

 动态网页的说明:

 假如张三通过浏览器访问到了web服务器上的项目,他想查询自己成绩,web服务器便响应张三的请求发送了张三的成绩给他,李四重复上面操作,这时服务器就会响应李四的成绩,而不是张三的。它是根据用户不同的请求而发生变化的。

二、Tomcat Web服务器

1、介绍

Tomcat是Apache开源组织共享的Jakarta项目中的一个核心向,Tomcat开源免费、支持Java中的动态网页技术Servlet和JSP规范,因此Java开发者多使用Tomcat.

2、下载、安装、配置
3、目录结构
  • bin 该目录存放的是可执行的二进制文件(startup.bat用于启动Tomcat、shutdown.bat用于停止Tomcat)

  • conf 存放的是Tomcat的配置文件(server.xml可以配置Tomcat的端口,web.xml)

  • lib 此目录存放了Tomcat服务器运行web项目所需的基础类库

  • logs 存放Tomcat服务器的运行日志、记录了服务器启动、运行异常及关闭等操作的记录

  • temp 临时目录,存放Tomcat运行过程中产生的临时文件

  • webapps 存放Tomcat管理的web项目的目录,此目录中默认部署了Tomcat管理器等几个web项目

  • work Tomcat可以运行动态网页,动态网页就是在服务器上将数据加载到网页生成的页面,此目录就是存放Tomcat生成的文件

 4、web项目部署

web项目部署:将web项目交给Tomcat管理,当用户访问Tomcat时,Tomcat可以将web项目中的资源响应给用户浏览器。

方式1:直接将web项目拷贝到Tomcat的webapps目录(访问路径就是项目名)

方式2:将web项目的路径配置到Tomcat中

  • 拷贝web项目的路径 E:\JavaWeb\workspace\html\demo1

  • 在Tomcat的conf目录中Catalina\localhost创建一个xml文件(xml文件名可以自定义,建议和项目名称一致)

  • 在xml文件中如下配置:

    • path配置web项目的访问路径

    • docBase配置web项目的目录路径

    • <Context path="/demo1" docBase="E:\JavaWeb\workspace\html\demo1"></Context>

5、浏览器访问web服务器

打开浏览器输入网址:http://host-ip:tomcat-port/web-Path/index.html

  • http:// web服务的HTTP传输协议

  • host-ip 服务器所在计算机的IP

  • tomcat-port Tomcat服务器占用的网络端口(默认8080,可以在conf/server.xml中修改端口),如果tomcat端口为80,则可以省略

  • web-Path Tomcat中部署的web项目的访问路径

    • 如果是直接将项目拷贝到 tomcat的 webapps中,并且没有进行其他配置,这个路径就是项目文件夹名称

    • 如果是通过在Catalina\localhost配置xml文件的形式部署项目,则项目的访问路径就是Context标签path属性的值

示例:

  • http://192.168.155.1:8080/wolf/index.html

  • http://192.168.155.1:8080/demo1/hw_login.html

6、Tomcat服务器响应流程

别的计算机在浏览器通过HTTP协议访问部署在Tomcat服务器上的项目。

相关文章:

初识Web服务器

一、web服务器 1、什么是web服务器&#xff1f; web服务器就是web项目的容器&#xff0c;我们将开发好的web项目部署到web容器中&#xff0c;才能使用网络中的用户通过浏览器进行访问。 一张图带你了解web服务器有啥作用&#xff1a; 在我的电脑上有一个已经做好的项目&#…...

IOS - 手机安装包 ipa 常见几种方式

安装 ipa 包的方法有很多中&#xff0c;可以通过不同的软件安装&#xff0c;本文只列出了常用的几种&#xff0c;做个简单的归纳整理 1、iTunes 安装 数据线连接手机之后&#xff0c;会自动连接iTunes&#xff0c;&#xff08;第一次连接的时候会提示是否信任此电脑&#xff0…...

60、resnet50 权值和参数加载

上一节我们将 resnet50 中需要下载的权值,以及每层卷积的参数,都下载并且保存到了 仓库 resnet50_weight 目录,在仓库的这个连接。 在将权值保存好之后,接下来就是要看如何使用这些权值,也就是如何加载。本节就介绍下我们实战过程中,如何加载这些权值。 加载权值 加载权…...

wordpress在界面将站点地址直接修改为https导致上不去问题的解决办法

wordpress在界面将站点地址直接修改为https导致上不去问题的解决办法 #修改数据库yz_options...

数字IC后端实现之快速获取innovus中drv violation的所有net list

在Innovus中place_opt_design和optDesign阶段&#xff0c;我们经常会看到如下所示的log提示信息&#xff0c;核心关键词是“ Reasons for remaining drv violations”。而且告诉我们总共有819条net存在drv violation&#xff0c;且无法被工具优化掉。 Reasons for remaining dr…...

【开源】基于JAVA语言的智能教学资源库系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 课程档案模块2.3 课程资源模块2.4 课程作业模块2.5 课程评价模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 课程档案表3.2.2 课程资源表3.2.3 课程作业表3.2.4 课程评价表 四、系统展示五、核心代…...

数据库定义和操作语句的重要语法

数据库&#x1f4ca;的10种语法 数据查询语句 select : 用于从数据库中检索数据。 select column1, column2,.... from table_name where condition; select distinct : 用于从数据库中检索唯一的数据值。 select DISTINCT column1, clumn2,... from table_name; 工作原理…...

计算机组成原理 CPU的功能和基本结构和指令执行过程

文章目录 CPU的功能和基本结构CPU的功能CPU的基本结构 指令执行过程指令周期概念指令执行方案指令数据流取周期数据流析指周期数据流执行周期数据流中断周期数据流 数据通路的功能和基本结构数据通路的功能数据通路的结构单总线 CPU的功能和基本结构 #mermaid-svg-0uHwjZOZh4kS…...

批量归一化:彻底改变深度学习架构

一、介绍 在深度学习的动态领域&#xff0c;批量归一化的引入标志着神经网络训练方法的关键转变。这项创新技术由 Sergey Ioffe 和 Christian Szegedy 在 2015 年提出&#xff0c;已成为现代神经网络架构的基石。它解决了训练深度网络的关键挑战&#xff0c;特别是处理臭名昭著…...

Spring05

一、Spring事务管理入门 1.1、创建数据库和表 创建一个Spring数据库&#xff0c;在Spring数据库中创建tb_account(账户表)&#xff0c;并初始化数据。 1.2、编写Service层、Mapper层以及调用层 1.2.1、AccountServiceImpl实现了AccountService接口 1.2.2、Mapper层中的代码 1…...

MvvmToolkit的使用

背景&#xff1a;MvvmLight不更新了&#xff0c;用Toolkit代替 1、首先下载好社区版本的NuGet包 2、ViewModel中需要继承ObservableObject&#xff0c;查看ObservableObject可以看到里面有实现好InotifyPropertyChanged。 3、对于属性的set&#xff0c;可以简写成一行&#xff…...

分布式【一致性Hash算法简介】

一致性Hash是一种特殊的Hash算法&#xff0c;由于其均衡性、持久性的映射特点&#xff0c;被广泛的应用于负载均衡领域&#xff0c;如nginx和memcached都采用了一致性Hash来作为集群负载均衡的方案。 一致性Hash算法简介 在了解一致性Hash算法之前&#xff0c;先来讨论一下Ha…...

PHP命令行脚本接收传入参数的三种方式

1.使用$argv or $argc参数接收&#xff0c;会把文件本身计算在内 $argv&#xff1a; 以数组形式接收保存参数 $argc&#xff1a;保存参数个数 <?php echo "接收到{$argc}个参数"; print_r($argv); //执行 //php /usr/local/php/bin/php test.php 接收到1个…...

【STM32】STM32学习笔记-ADC单通道 ADC多通道(22)

00. 目录 文章目录 00. 目录01. ADC简介02. ADC相关API2.1 RCC_ADCCLKConfig2.2 ADC_RegularChannelConfig2.3 ADC_Init2.4 ADC_InitTypeDef2.5 ADC_Cmd2.6 ADC_ResetCalibration2.7 ADC_GetResetCalibrationStatus2.8 ADC_StartCalibration2.9 ADC_GetCalibrationStatus2.10 A…...

1329:【例8.2】细胞 广度优先搜索

1329&#xff1a;【例8.2】细胞 时间限制: 1000 ms 内存限制: 65536 KB 【题目描述】 一矩形阵列由数字0 到9组成,数字1到9 代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。如: 4 10 0234500067 1034560500 2045600671 00000000…...

9款免费网络钓鱼模拟器详解

根据《2023年网络钓鱼状况报告》显示&#xff0c;自2022年第四季度至2023年第三季度&#xff0c;网络钓鱼电子邮件数量激增了1265%。其中&#xff0c;利用ChatGPT等生成式人工智能工具和聊天机器人的形式尤为突出。 除了数量上的激增外&#xff0c;网络钓鱼攻击模式也在不断进…...

linux cpu、memory 、io、网络、文件系统多种类型负荷模拟调测方法工具

目录 一、概述 二、stress介绍和使用 2.1 介绍 2.2 使用 三、stress-ng介绍和使用 3.1 介绍 3.2 使用 3.3 实例 四、sysbench 4.1 介绍 4.2 使用 五、lmbench 5.1 介绍 5.2 使用 一、概述 今天介绍两款cpu负荷调试工具,用来模拟多种类型的负载。主要用来模拟CPU…...

1018:奇数偶数和1028:I love 闰年!和1029:三角形判定

1018&#xff1a;奇数偶数 要求&#xff1a;输入一个整数&#xff0c;判断该数是奇数还是偶数。如果该数是奇数就输出“odd”&#xff0c;偶数就输出“even”&#xff08;输出不含双引号&#xff09;。 输入样例&#xff1a;8 输出样例&#xff1a;even 程序流程图&#xff1a…...

数据密集型应用系统设计--第2章 数据模型与查询语言

一、引言 数据模型可能是开发软件最重要的部分,而且还对如何思考待解决的问题都有深远的影响。 大多数应用程序是通过一层一层叠加数据模型来构建的。每一层都面临的关键问题是&#xff1a;如何将其用下一层来表示&#xff1f; 1.作为一名应用程序开发人员&#xff0c;观测现实…...

yolo 分割label格式标注信息图片显示可视化查看

参考: https://github.com/ultralytics/ultralytics/issues/3137 https://blog.csdn.net/weixin_42357472/article/details/135218349?spm=1001.2014.3001.5501 需要把坐标信息在图片上显示 代码 1)只画出了坐标边缘 import cv2 import numpy as np from random impor…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

Oracle查询表空间大小

1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...