Tomcat服务器与HTTP协议

一.  Tomcat服务器

1.tomcat服务器

1.web :网页,它代表的是网络上的资源。(java技术开发动态的web资源,即动态web页面,在Java中,动态web资源开发技术统称为Javaweb。)

网络的资源分为两种

1).静态资源------主要用于展示信息     html

2).动态资源------交 互                 jsp asp php

2.javaweb开发中常见的服务器.

weblogic  BEA公司------它是一个javaEE规范的web服务器.

--学习weblogic 成本比较低。中文资源在网络上比较多。

-- weblogic是收费。

WebSphere IBM  -------- 它是一个javaEE规范的web服务器.

--webSphere是收费。

--学习成本高。相关资料比较少。

tomcat    --------     它是开源免费的. 它是一个servlet规范的web服务器.

Jboss       ------     hibernate公司   javaEE规范的web服务器.

3.tomcat服务器介绍

在公司中应用比较多的 tomcat5  tomcat5.5

我们学习的是tomcat7   servlet3.0技术

1).在apach的官网下载tomcat7.

2).配置

关于安装后注意事件

a). 机器上必须安装jdk,并且配置了JAVA_HOME

--JAVA_HOME=D:\Java\jdk1.7.0_10

b). 端口被占用.

--关闭占用8080端口的软件.

--在win7下可以使用netstat命令查看占用端口的程序

--在cmd/ netstat -ano 查看占用端口的程序的PID

--在资源管理器中根据PID查找程序,关闭这个进程。

注意:有些情况下,进程是系统进程,不能关闭,这时我们可以通过修改tomcat端口来让tomcat服务器启动.

c). CATALINA_HOME问题

--CATALINA_HOME它配置的是tomcat的根目录.

--如果在环境变量中配置了CATALINA_HOME,那么

--你执行  startup.bat文件,启动永远是CATALIN_HOME指定的tomcat。

d). 安装完成tomcat后,怎样运行它.

tomcat/bin/startup.bat   ---开启服务器

tomcat/bin/shutdo-wn.bat ----关闭服务器.

测试是否启动成功

http://localhost:8080

--------------------------------------------------------------------------------------------------------------------

web应用程序.

1.web应用程序的基本的目录结构(重点)

目录

|-----可以直接放置web资源

可以是静态的也可以是动态的

html,js,css或图片,音频.

动态可以是 jsp

|------WEB-INF (它是区别静态web与动态web,不对外发布)

-----classes 目录  ----它是用于放置java文件.

-----lib目录 -----------它是用于存放  web应用的jar 包.

-----web.xml文件(******)---它是web应用的配置文件.

2.关于tomcat加载web应用(虚拟目录)----重点**********************

Web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,

这个过程称之为虚似目录的映射。A啊

(1).在tomcat/conf/servic.xml文件中进行配置.

在service.xml文件的</Host>上面添加一句话.

<Context path="虚拟目录名称"  docBase="web应用的路径"/>

---path代表应用的访问路径,一定要有"/"

---docBase代表的是应用的真实路径

例如: <Context path="abc" docBase="D:\myweb"/>

(2)在tomcat/conf/catalina/localhost目录

---- 在其下创建任意一个名称的xml文件

----  在文件中写入  <Context docBase="web应用的路径" />

例如:

创建的xml文件的名称是   aaa.xml文件,其内容是

<Context docBase="d:/myweb" />

例:http://localhost:8080/abc/index.jsp

------------------------------------------------------   ------------------------------------------

小知识点

          访问URL地址解析的过程 ? http://localhost:8080/应用名/html/1.html

http:

<Connector   protocol="HTTP1.1">

localhost:代表主机是本地主机

<Engine name="Catalina" defaultHost="localhost">

<Host name="localhost"  appBase="webapps"unpackWARs="true" autoDeploy="true">

:8080  代表http协议使用的端口号  server.xml的69行

<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />

定位文件夹:

<Host name="localhost"  appBase="webapps"unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

1.关于web应用的首页设置

在tomcat/conf/web.xml文件对首页进行默认设置.

<welcome-file-list>

<welcome-file>index.html</welcome-file>

<welcome-file>index.htm</welcome-file>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

在tomcat/conf/web.xml文件设置的内容是对tomcat下所有工程生效。

上面内容的意思是它如果有index.html  index.htm  index.jsp

那么我们在访问web应用时,如果没有指定资源,就默认访问上面页面。

我们web应用中有一个页面叫  a.html,我们想让其是默认被访问的页面。

可以在自己的web.xml文件中进行设置.

2.关于war包生成.

java application -----jar文件.

web application------war文件。

使用压缩工具将web应用压缩成zip文件,修改后缀名为war,

将war文件直接复制到tomcat/webapps下,当服务器启动时,可以自动解压。

-------------------------------------------------------------------------------

配置主机

1.本地的域名解析文件

C:\Windows\System32\drivers\etc\hosts文件

对于http协议,默认访问的端口是80端口。

2.修改tomcat的默认端口为80.

在tomcat/conf/service.xml文件中.

3.关于tomcat默认访问的工程

默认访问的工程是webapps/ROOT

二.  http 协议

什么是协议?

在web开发,使用的绝大部分都是http协议。

用于定义浏览器与web服务器进行通信的格式.

基于请求---响应模式.

tcp协议是在传输应用

http协议是在应用层.

http是基于tcp协议。

--------------------------------------------------------

1.使用telnet

向tomcat服务器发送的请求是

GET /index.jsp HTTP/1.1

host:localhost

2.使用httpwatch进行抓包

--------------------------------------------------------

       http请求:

分为三部分

1.请求行

2.请求头

3.请求正文.

注意:请求正文与请求头之间有一个空白行.

如果要想有请求正文我们需要使用form表单,只有在post时,才能出现请求正文。

------------------------------------------------------------------------   --------------------------------------------------

http请求协议详解

1.请求行

1. 请求方式  常用的是get/post

2. 请求资源路径.

3. http版本协议

http协议版本 (1.1与1.0区别)

1.0---请求响应结束,会断开链接

1.1---请求响应结束,可以在次发送请求,直到超时,断开.

2.请求头中的重点

Accept-Encoding:gzip  ------浏览器支持的文件类型  gzip代表的是压缩文件

if-Modify-since----与http响应中的 last-modify组合使用.

referer----- 可以完成防盗链

user-agent       ----得到浏览器的版本.

请求头中的信息都是以 name:values的方式出现的.

一个name可以对应多个value,value与value之间使用","分开;

--------------------------------------------------------------------------------------------------------------------------

                http响应

1。响应行

响应状态码

1xx------informational  服务器端什么都没做,直接响应。

2xx------successful 成功                 **200  响应成功

3xx------redirection   客户端向服务器发送请求,服务器做了一些操作,没做完,通过浏览器继续执行其它操作-                                                                                                                    * 302  重定向      304  not modify  没有改变----是一种缓存策略.

4xx------客户端错误  client error  **  404  页面找不到.

5xx------服务器端错误  server error  **     500  服务器挂掉了。

2.响应头.

Location: http://www.it315.org/index.jsp ----与302状态码完成重定向

Content-Encoding: gzip ----filter是使用,进行压缩

Content-Type: text/html; charset=GB2312  --设置响应数据的mimeType类型.

Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT

与if-modify-sinze组合使用.(见下图)

Refresh: 1;url=http://www.it315.org

上面操作时在1秒后跳转到url指定的路径。

Content-Disposition: attachment; filename=aaa.zip

上面的操作我们会在文件下载是讲到

Expires: -1

Cache-Control: no-cache

Pragma: no-cache

这三个可以进行浏览器缓存设置.

3.响应正文,

响应正文的内容会被显示在浏览器窗口中。

-------------------------------------------------------------

tomcat服务器本身也提供压缩优化

在server.xml文件中对8080端口进行配置

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443"

compressableMimeType="text/html,text/xml,text/plain"

compression="on"

/>

这时在通过8080端口访问时,可以册封指定类型的响应的数据进行压缩。

80端口

00:00:00.000 0.074        11690       GET  200  text/html;charset=ISO-8859-1

8080端口

00:00:00.000 0.063        2328         GET  200  text/html;charset=ISO-8859-1

Tomcat服务器与HTTP协议的更多相关文章

  1. 关于Tomcat服务器中的协议及请求过程

    关于Tomcat服务器中采用的协议:在Tomcat的server.xml文件中可以找到如下几个Connector <!-- 1. HTTP --> <Connector port=& ...

  2. tomcat服务器和http协议笔试题

    tomcat与web程序结构与Http协议与HttpUrlConnection 考查的知识点:tomcat服务器相关信息 1.下面关于tomcat服务器描述正确的是() (难度A) A. tomcat ...

  3. tomcat服务器和HTTP协议

    tomcat:一个服务器的服务器软件,发布资源要用的 服务器组成: 1.服务器硬件 2.服务器软件 3.项目(一堆资源的集合) 4.资源tomcat本身是一个java程序,必须依赖jre运行eclip ...

  4. JavaWeb 后端 <一> 之 Tomcat服务器 - Http协议 学习笔记

    1.Web开发概述 1.1服务器上的资源分类: a.静态资源:指web页面中供人们浏览的数据始终是不变.html css js 图片 多媒体 b.动态资源:指web页面中供人们浏览的数据是由程序产生的 ...

  5. Linux下安装Tomcat服务器和部署Web应用

    一.上传Tomcat服务器

  6. JavaWeb开发学习(二)-配置Tomcat服务器

    1. 下载Tomcat服务器 Tomcat是一个免费.开源的JavaWeb服务器. Tomcat官网是http://tomcat.apache.org/ 我使用的是版本是Tomcat7.0,下载Zip ...

  7. JavaWeb---总结(三)Tomcat服务器学习和使用(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  8. [Java Web] 6、Tomcat服务器的安装及配置以及JSP技术笔记

    目录  1.Web容器简介  2.Tomcat粗介及配置粗讲  3.Tomcat服务器配置 3-1.修改端口号  3-2.配置虚拟目录 3-3.配置首页  4.JSP执行流程  5.JSP粗略了解 1 ...

  9. JavaWeb学习总结(二)——Tomcat服务器学习和使用(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

随机推荐

  1. Oracle 学习----游标(使用带参光标cursor)

    --表参照无参光标页信息 --注意:红色就是参数 declare cursor tt(pkeycode temp.keycode%type) is select name,sal from temp ...

  2. unity值得推荐的网址

    免费字体下载网站:http://www.dafont.com/ 免费声音文件下载网站:http://freesound.org/          http://incompetech.com/mus ...

  3. java程序员笑不死的经历ส้้้้้้้้้

    ส้้้้้้้้้้ส้้้้้้้้้้ส้้้้้้้้้ 1.程序猿最烦两件事,第一件事是别人要求他给自己的代码写文档,第二件呢?是别人的程序没有留下文档. 2.宪法顶个球!中国的法律都是.t ...

  4. ASP.Net MVC+EF架构

    ASP.Net MVC是UI层的框架,EF是数据访问的逻辑. 如果在Controller中using DbContext,把查询的结果的对象放到cshtml中显示,那么一旦在cshtml中访问关联属性 ...

  5. 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天

     孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...

  6. C# http Post与Get方法控制继电器

    ---恢复内容开始--- using System; using System.Collections.Generic; using System.Linq; using System.Text; u ...

  7. leetcode 179. 最大数 解题报告

    给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数. 示例 1: 输入: [10,2] 输出: 210 示例 2: 输入: [3,30,34,5,9] 输出: 9534330 说明: 输出结果 ...

  8. 没有外网情况下linux安装mysql

    首先linux要使用局域网 环境要求:局域网,  windows系统,  linux系统,  mysql安装包mysql.tar.gz 注意:32位操作系统用32位安装包,64位系统用64位安装包,不 ...

  9. 第十六篇:django基础

    本篇内容 创建程序 程序目录 流程介绍 login实例 一.创建程序 命令行: django-admin startproject sitename. 常用命令: python manage.py r ...

  10. linux和shell关系

    坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/   索引: 什么是shell shell的分类 shell脚本的执行方式   ...