day11-5_WEB应用服务器&协议

一、配置环境变量

Tomcat安装好后,需要配置环境变量,才能启动服务

1.配置JAVA_HOME路径:该路径指向jdk根目录
2.可以用%JAVA_HOME%替换掉Path里原来jdk的bin路径前的路径

配置JAVA_HOME

3.找到tomcat服务器bin目录下的startup.bat,启动

  • 启动tomcat服务

二、修改Tomcat的端口

1.在Tomcat根目录/conf/server.xml文件中修改端口

修改Tomcat的端口

注意:Tomcat的默认端口是8080, 但是,HTTP协议的默认访问的端口是80,80端口在浏览器中可以省略

三、常见的错误

1.无法访问

一般是服务没成功启动,需检查该服务是否启动

无法访问

2.404错误

表示在服务器上没有找到该文件,检查文件名、后缀或者路径、端口是否正确
1 名字是否对
2 web.xml 是否有配置
3 类是否在classes中
4 是否配置了字节码输出为classes


404错误

3.端口冲突

启动服务后窗口一闪而过,可能是已经启动服务,也可能是进程没有完全关闭,可以进入任务管理器把java的进程关掉,查看tomcat根目录logs文件夹下的日志文件,发现java.net.BindException: Address already in use: JVM_Bind表明是端口冲突

  • 端口冲突

4.配置文件错误

  • 删掉server.xml文件中的</Host>结束标签

    制造错误

  • 启动服务后一闪而过,打开日志文件查看错误org.xml.sax.SAXParseException,明显的提示你错误的位置

    配置文件错误日志

5.使用中文时编码错误

XML配置文件中使用了中文,此时XML文件必须使用UTF-8的编码

  • 此处使用ANSI编码格式保存


    制造编码错误
  • 启动服务一闪而过,打开日志com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException, 2 字节的 UTF-8 序列的- 字节 2 无效。

    编码错误

四、项目结构:建到自己记住为止

| 项目名称(项目的根目录)
        | WEB-INF  (此处存放的资源不能被外界访问)
                | web.xml   (当前web应用的配置信息)
                | classes  (当前web应用的字节码输出路径)
                | lib  (存放第三方jar包) 
        | 静态资源  (html,js,css可供外界访问)
  • sts修改字节码输出路径,右键web项目文件夹,点击构建路径,在此处修改


    sts修改字节码输出路径

五、部署项目

1.热部署项目

为了开发方便,我们需要热部署项目
在server文件的</Host>标签上添加<Context docBase="web项目的绝对路径" path="/web"/>标签

部署项目

Context :表示上下文,当前项目环境
docBase:项目路径,可以使用绝对路径或相对路径,相对路径是相对于webapps
path:访问项目的路径,如:http://127.0.0.1:8080/demo1 or localhost/demo1
注意:
1.如果没有path为空或者/的,就会找ROOT项目,使用该项目/文件名/访问http://localhost/webapp/index.htmlwebapp(项目名)
2.path为空或者/都会覆盖ROOT,此时访问不了tomcat服务器首页,默认是docBase的路径,直接访问http://localhost/index.html就是docBase指定的web项目【它会去自动找名为index的文件】
3.path的唯一性

2.Eclipse的Tomcat插件

  • 将插件的jar包net.sf.eclipse.tomcat_9.1.2.jar拷贝到sts的dropins目录中
  • 关联本地的Tomcat服务器
  • alt+t 启动/重启服务器


    关联本地的Tomcat服务器

六、URL

在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URL(Uniform Resource
Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址。

  • 语法:

解析:协议类型://服务器地址[:端口号]/路径/文件名[参数=值]
伪代码: protocol :// hostname[:port] / path / [;parameters][?query]#fragment
真实地址: http://localhost:8080/webapp/index.html

七、协议

协议: protocol,指定使用的传输协议,下表列出 protocol 属性的有效方案名称。 最常用的是HTTP协议,它也是WWW中应用最广的协议。

  • 协议分类:
  • file 资源是本地计算机上的文件。格式file:///,注意后边应是三个斜杠。
    (标准 url scheme:[//[user:password@]host[:port]][/]path[?query][#fragment]本地文件没有 host,就直接省略了,只剩下最后的斜线后就是路径,看起来就是三个连起来了)
  • ftp 通过 FTP访问资源。格式 FTP://
  • http 通过 HTTP 访问该资源。 格式 HTTP://
  • https 通过安全的 HTTPS 访问该资源。 格式 HTTPS://

八、IP

是指存放资源的服务器的域名系统(DNS) 主机名或 IP 地址。有时,在主机名前也可以包含连接到服务器
所需的用户名和密码(格式:username:password@hostname)。

  • localhost是一个域名,127.0.0.1为IP地址。
  • Windows系统中,约定127.0.0.1为本地IP地址。localhost是其对应的域名。
  • 配置是在hosts文件中设置的,Windows下该文件位置为:C:\Windows\System32\drivers\etc目录下hosts文件。


    配置主机的域名和ip

九、端口

端口: port

  • 整数,可选,省略时使用方案的默认端口,各种传输协议都有默认的端口号,如http的默认端口为80。
    如果输入时省略,则使用默认端口号。有时候出于安全或其他考虑,可以在服务器上对端口进行重定
    义,即采用非标准端口号,此时,URL中就不能省略端口号这一项。

十、TCP和UDP的区别

TCP和UDP的区别: TCP基于连接的协议,UDP基于数据报包的协议

  • 1.TCP :面向连接(经历三次握手)、传输可靠(保证数据正确性,保证数据顺序)、用于传输大量数据(流模式)、速度慢,建立连接需要开销较多(时间,系统资源)。 服务端和客户端(浏览器)
    第一次:客户端发送请求到服务器,服务器知道客户端发送,自己接收正常。SYN=1,seq=x
    第二次:服务器发给客户端,客户端知道自己发送、接收正常,服务器接收、发送正常ACK=1,ack=x+1,SYN=1,seq=y
    第三次:客户端发给服务器:服务器知道客户端发送,接收正常,自己接收,发送也正常.seq=x+1,ACK=1,ack=y+1


    TCP建立连接

    TCP断开连接(四次挥手)
    第一次:客户端请求断开FIN,seq=u
    第二次:服务器确认客户端的断开请求ACK,ack=u+1,seq=v
    第三次:服务器请求断开FIN,seq=w,ACK,ack=u+1
    第四次:客户端确认服务器的断开ACK,ack=w+1,seq=u+1


    TCP断开连接
  • UDP:面向非连接,基于数据报包、传输不可靠(丢包[数据丢失])、用于传输少量数据(数据报包模式)、速度快。发送端和接收端

十一、HTTP的作用

WEB浏览器与WEB服务器之间的一问一答的交互过程必须遵循一定的规则,就是HTTP协议。
HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议之上的一个应用层协

作用: 用于定义WEB浏览器与WEB服务器之间交换数据的过程以及数据本身的格式。

  • 浏览器给服务器发送数据:一次请求:request
    服务器给浏览器反馈数据:一次响应:response
  • HTTP1.1规范:能在一次连接之间,多次请求,多次响应,响应完之后再关闭连接
    HTTP 1.1的特点 在一个TCP连接上可以传送多个HTTP请求和响应 多个请求和响应过程可以重叠进行 增加了更多的请求头和响应头

十二、如何查看HTTP中的请求和响应的信息

  • 1.F12进入浏览器的开发者模式

  • 2.打开network窗口

  • 3.点击要查看的请求

  • 查看请求和响应信息
  • 常规信息general

  • 响应头信息response


    响应头信息

    -- 1.状态行:位于响应消息的第一行 格式: HTTP版本号 状态码

1xx Informational(指示信息) 表示请求已接收,继续处理
2xx Success(请求成功) 表示请求已被成功接收
3xx Redirection(重定向) 完成请求,必须进行更进一步的操作
4xx Client Error(客户端错误) 请求有语法错误或者请求无法实现
5xx Server Error(服务端错误) 服务器处理请求出错
<<<<<<<<<<<<
200 OK 请求正常处理完毕
404 Not Found 表示服务器找不到你请求的资源
500 Internal Server Error 表示服务器执行请求的时候出错了 (Java代码有异常)

-- 2. 若干响应头:从第二行开始到第一个空行

-- 3. 响应正文:从第一个空行开始,后面的都是正文。


响应正文
  • 请求头信息request


    请求头信息

    -- 1. 请求行:位于请求消息的第一行 格式:请求方式 资源路径 HTTP版本号,常用请求方式:GET和POST方式
    -- 2. 若干请求头:从第二行开始到下一个空行。作用:向服务器传递客户端的一些基本信息
    -- 3. 请求实体:(提交到服务器的请求参数)


    请求实体

十三、GET和POST请求的区别

  • GET和POST请求的区别:

1):GET的请求数据在地址栏,而POST不会,POST比GET安全一些


GET和POST方式提交表单对比

2):POST请求的参数存放于请求实体中,而GET存放于请求行中
3):GET方式请求的数据不能超过2K,而POST没有上限,比如文件上传时,必须使用POST方式
4):GET可以缓存,而POST没有缓存


  • 查询的时候使用使用GET,其他时候使用POST,表单全部使用POST提交.
GET和POST请求的区别
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,734评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,931评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,133评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,532评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,585评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,462评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,262评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,153评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,587评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,792评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,919评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,635评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,237评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,855评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,983评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,048评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,864评论 2 354

推荐阅读更多精彩内容