J2EE进阶之tomcat服务器搭建,HTTP协议 八

23 篇文章 0 订阅
13 篇文章 1 订阅

tomcat服务器搭建,HTTP协议

服务器

    * WEB   网页  javaweb 使用java语言开发动态的网页

    * C/S   client/server   客户端/服务器 例子:QQ   快播  暴风影音    
        * 优点:交互性好,下载客户端。服务器压力小。
        * 缺点:如果客户端更新,需要下载。

    * B/S   browser/server  浏览器/服务器 例子:购物的网站    12306
        * 缺点:服务器的压力大。
        * 优点:不需要更新。

    * 静态的web资源
        * HTML CSS JAVASCRIPT

    * 动态的web资源  
        * Servlet/JSP   

服务器

    * 概念
        * 硬件
            * 一台电脑
        * 软件
            * 服务器的软件。

    * 访问:
        * ip+端口号(默认的端口号是80) 
        * http://www.baidu.com/ 

        * 百度的ip:61.135.169.121:80

        * 发布web的资源的话    :http://ip:8080/xx/xx.html


    * WEB的常见服务器
        * WebLogic  BEA公司(orcale收购了)    收费的 支持JAVAEE所有的规范   EJB servlet/jsp     (java   mysql(oracle)   WebLogic)

        * WebSphere IBM  收费的    支持JAVAEE所有的规范   

        * tomcat    apache(开源的组织,非常伟大)  支持servlet/jsp规范     


    * 安装服务器
        * 配置JAVA_HOME       

        * 推荐使用解压版的,放在根目录下。启动服务器。tomcat/bin/startup.bat,双击就启动服务器了。
        * 访问:       http://192.168.14.141:8080
        * 访问1.html  http://192.168.14.141:8080/aa/1.html

        * 访问自己的服务器:http://localhost:8080/aa/1.html
        * 访问自己的服务器:http://127.0.0.1:8080/aa/1.html

        * 关闭服务器:关闭黑窗口。


    * 常见的启动问题
        * JAVA_HOME环境变量的配置

        * 端口占用的问题
            * java.net.BindException: Address already in use: JVM_Bind
            * 解决办法:
                * 通过dos窗口输入命令   netstat -ano    查询所有的进程,占用8080的进程的PID
                * 通过任务管理器,结束掉进程就ok


                * 修改tomcat服务器自己的端口号(默认是8080,修改成80)
                    * 修改tomcat服务器的配置文件
                    * tomcat/conf/server.xml修改配置文件
                        <Connector port="80" protocol="HTTP/1.1" 
                           connectionTimeout="20000" 
                           redirectPort="8443" />


                    * 说明80端口,其他的程序占用了。
                        * World wide web publish IIS    自带的服务(占用的80)

                * 必须重新启动服务器。

tomcat目录结构

        * bin(**)           启动服务器
        * conf(*****)       tomcat服务器的配置文件
        * lib(**)           存放jar包
        * logs(**)      存放日志
        * temp(**)      存放临时文件的
        * webapps(*****)    web applications    存放web应用的
        * work(****)        JSP翻译成servlet存放在word目录下。

web资源

        * servlet/JSP   

        * 在webapps目录,发布动态的web资源

        website(项目)
            |   --  HTML/CSS/JAVASCRIPT/JSP
            WEB-INF 
                |
                web.xml     必须要有的
                classes     (可选的)   编译成.class的文件
                lib         (可选的)   第三方的jar包

MyEclipse和tomcat的结合

        * 通过winodw -- 选项 -- myEclipse -- Servers -- 选择tomcat6.x -- 选择enable -- 选择tomcat的根目录 

        * 选择tomcat左边的加号 -- 选择JDK -- 点击ok

        * 创建了web的项目,发布到服务器中了。启动服务器,就可以正常的访问了。

        * 虚拟路径(访问的路径)
            * 默认和项目名称是相同的,并且一般情况下和项目相同。
            * WebRoot -- 虚拟路径

        * 修改虚拟路径
            * 项目右键 -- 选择属性 -- myeclipse -- web -- 修改虚拟的路径


    * tomcat配置管理员(了解)
        * 需要在tomcat/conf/tomcat-user.xml
        <role rolename="manager"/>
        <user username="admin" password="admin" roles="manager"/>

如何部署web的应用程序 (三种)(*

        * 直接把项目复制到webapps目录下。

        * 通过配置虚拟路径方式
            * 直接在tomcat/conf/server.xml中去配置虚拟路径
                * 通过Context的标签来配置虚拟路径,需要在<host>标签下配置
                    docBase :项目的真实路径
                    path    :虚拟的路径(访问路径)

                    <Context docBase="项目的真实路径" path="虚拟路径"></Context>


            * 自己可以编写一个配置文件(推荐使用的)
                * 自己在一个固定的文件夹下编写一个abc.xml配置文件,把abc作为虚拟路径(访问路径)。

                    * 在哪个文件夹下?
                        *  $CATALINA_HOME/conf/[enginename]/[hostname]
                        * tomcat/conf/Catalina/localhost/abc.xml    把abc作为访问的路径了


                    * 配置文件中写什么配置?
                        * <Context docBase="项目的真实路径" ></Context>


    * web的通信
        * 先找本地的hosts文件 -- 找网络DNS域名的服务器

    * 配置虚拟主机
        * hosts文件地址:C:\WINDOWS\system32\drivers\etc\hosts
        * 需要使用<host>标签  name="www.baidu.com"  appBase="C:\baidu"

HTTP的协议

    * 遵循一定规范的数据格式。
        * 基于请求和响应的模式(先有请求,才有响应)
        * 默认端口80
        * 基于TCP的链接


    * telnet命令
        * DOS的窗口中运行命令
        * telnet localhost 80
        * 输入内容是乱码(解决乱码)
            ctrl+]  解析乱码的问题

        * telnet不支持删除。一般都是写好,复制过去


        * 发送的请求
            GET /aa/1.html HTTP/1.1
            host:localhost


        * 响应的内容
            HTTP/1.1 200 OK
            Server: Apache-Coyote/1.1
            ETag: W/"14-1415411840772"
            Last-Modified: Sat, 08 Nov 2014 01:57:20 GMT
            Content-Type: text/html
            Content-Length: 14
            Date: Sat, 08 Nov 2014 08:20:11 GMT

            <h1>hello</h1>


        * HTTP协议的版本
            * HTTP/1.0
                * 一次请求只能获取到一个web资源。做出一次响应,链接就断开了。

            * HTTP/1.1(使用)
                * 一次请求,获取多次web的资源。
                * 长时间不操作,自动断开链接的。

请求

        * 请求行
            * 提交方式  
                * POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT、CONNECT
                * POST和GET的区别:

            * 请求的路径 
                * 
            * 协议的版本
                * HTTP/1.1版本

        * 请求头
            Accept: text/html,image/*    
            Accept-Charset: ISO-8859-1
            Accept-Encoding: gzip
            Accept-Language:zh-cn 
            Host: www.itcast.com:80
            If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT
            Referer: http://www.itcast.com/index.jsp
            User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
            Connection: close/Keep-Alive   
            Date: Tue, 11 Jul 2000 18:23:51 GMT

            * 重点的头
                * If-Modified-Since :控制本地的缓存(必须要和响应头一起使用)
                * Referer           :记录当前网页的来源(防止盗链)
                * User-Agent        :获取浏览器的信息(做文件下载时候用)

        * 请求体
            * POST方式参数

响应

        * 响应行
            * 协议版本
                * HTTP/1.1
            * 状态码
                200 :请求成功处理,一切OK
                302 :请求重定向 
                304 :服务器端资源没有改动,通知客户端查找本地缓存 
                404 :客户端访问资源不存在
                500 :服务器内部出错 

            * 状态码描述

        * 响应头
            Location: http://www.it315.org/index.jsp 
            Server:apache tomcat
            Content-Encoding: gzip 
            Content-Length: 80 
            Content-Language: zh-cn 
            Content-Type: text/html; charset=GB2312 
            Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT
            Refresh: 1;url=http://www.it315.org
            Content-Disposition: attachment; filename=aaa.zip
            Expires: -1
            Cache-Control: no-cache  
            Pragma: no-cache   
            Connection: close/Keep-Alive   
            Date: Tue, 11 Jul 2000 18:23:51 GMT

            * 重要的头
                * Location              :和302完成重定向的操作
                * Last-Modified         :和If-Modified-Since完成控制缓存的操作,304
                * Refresh               :页面定时刷新
                * Content-Disposition   :文件下载的时候

                    Expires: -1
                    Cache-Control: no-cache  
                    Pragma: no-cache
                    * 禁用浏览器的缓存

        * 响应体
            * 真正的数据内容
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值