• Tomcat服务器 和 HTTP协议


    WEB开发简介

    * 当前网络上两种架构
        * C/S   Client/Server   客户端/服务器     需要下载客户端软件       例子:QQ       快播      暴风影音
            * 优点:服务器压力相对比较小,安全性比较高。
            * 缺点:需要下载客户端软件,总去更新。
        * B/S   Browser/Server  浏览器/服务器     不需要下载客户端软件(客户端就指浏览器)    例子:购物网站(淘宝  京东) 12306
            * 缺点:服务器压力比较大(硬件比较强)
            * 优点:浏览器,不用更新,服务器端去做更新了。

    WEB相关知识

    * WEB:网页。JavaWeb:使用Java语言来开发网页。
    * 静态的WEB资源
        * HTML CSS JavaScript
    * 动态的WEB资源
        * Servlet/JSP
    
    * 静态和动态的区别
        * 动态的资源数据是活的,例子:假如说班长登陆淘宝,显示班长的名字。我登陆了淘宝,我的名字。
    
    * 微软    ASP.net
    * PHP   小巧(开发网站非常强大,处理大数据)
    * RUBY  小日本
    
    * Java语言优点:开发了网站,没有任何优势。优势是服务器端,处理业务(电信,淘宝,银行)。
    
    * 静态Web资源:简单一句话,浏览器能看的懂的。
    * 动态Web资源:先需要服务器把它转换成HTML,再给浏览器看。

    服务器的简介

    * 服务器整体概念:
    * 硬件:一台电脑。
    * 软件:服务器的软件,Tomcat服务器软件。
    * 如果安装了服务器软件了,启动服务器和关闭服务器。假如启动了服务器,怎么访问?
        * 访问:http://www.baidu.com   一回车访问百度了
        * http://           代表HTTP的协议
        * www.baidu.com     域名(DNS域名服务器注册   .baidu.com  61.135.169.125)
        * 最终:http://192.168.1.100:端口号(默认值80)
        * 最终:http://192.168.1.100:80/index.html

    常见的WEB服务器

    * Tomcat(Apache)    开源免费的   开发中应用最广的服务器 支持JSP/Servlet规范 SSH
    * JBoss             免费的     支持JAVAEE所有的规范   EJB规范 JSP/Servlet
    * Weblogic  原来的公司BEA公司      收费的 大型的服务器  支持JAVAEE所有的规范   被Oracle收购了
            SUM公司(Java语言)   +   数据库(Oracle MySQL(也被收购了))    +  服务器(Weblogic)
    * Websphere 公司的IBM公司            收费    大型的服务器    支持JAVAEE所有的规范

    Tomcat服务器

    * 下载tomcat服务器,安装版本和解压版本。现在都使用解压版本(7.x)
    * 解决文件,放在本地的磁盘上(目录:不要有中文和空格)
    * 启动服务器:在tomcat/bin/startup.bat(批处理文件),双击文件。弹出黑色的窗口。服务器成功。(不要把黑窗口关闭)
    * 访问服务器的主页:http://localhost:8080    就可以访问tomcat默认主页
    * 关闭服务器:(关闭黑窗口,关闭暴力的),温柔的关闭。在bin的目录下,有shutdown.bat。双击该文件,关闭服务器。

    常见问题

    * 第一个注意:必须安装JDK,必须配置Java_Home环境变量。窗口一闪而过。说明环境变量没配置好。
    * 不小心,已经启动了一个服务器,又想启动服务器。端口占用的问题。
        * 端口占用的问题:java.net.BindException: Address already in use: JVM_Bind
        * 解决占用的问题:
            * 先找到占用端口的应用程序,结束掉该应用程序。
                * netstat  –ano 查看所有占用端口的应用程序,找到程序的PID,要任务任务管理器中结束掉。    
                * 有一个应用一直占用,一开机就占用。
            * 修改端口号(修改tomcat服务器的端口号)。(默认是8080,改成其他的端口号)
                * Tomcat服务器的配置文件    -- tomcat/conf/server.xml的文件
                * 一般情况下改成80,80端口是HTTP协议的默认端口号,访问可以不写。
                * 如果万一占用的80端口,干掉它。系统中的服务要是占用80端口,禁用该服务。
    
    * 如果系统自带的微软服务器IIS(World wide web publish IIS),去系统服务中把服务禁用。

    Tomcat目录结构

    ** bin              可执行文件(启动和关闭)
    ***** conf          存放的Tomcat配置文件
    *** lib             给Tomcat服务器运行时所需jar
    *** logs            存放Tomcat运行时产生日志文件。
    ** temp             Tomcat运行时产生临时文件
    ***** webapps       Wab Applicatons(WEB应用们),在该目录下存放就是项目。
    ***** work          JSP翻译成.java的文件,存放在work的目录下

    在webapps目录创建静态和动态的WEB资源

    * webapps目录下存放的是项目,项目区分静态的WEB资源和动态的WEB资源。
    * 静态和动态在webapps的目录下存在的方式不一样。
        * 如果静态的WEB资源 -- 在webapps目录创建一个文件(项目名称) -- 直接可以放在静态资源(HTML CSS JS)
        * 如果动态的WEB资源 
            * 在webapps目录下创建一个文件
            * 在该文件下创建WEB-INF的目录(名称固定、大写固定)
            * 在WEB-INF目录下web.xml的文件(必须要有,有文档声明,根节点和约束,复制一份)
            * 在WEB-INF目录下       classes文件夹(.class文件)
            * 在WEB-INF目录下       lib文件夹(引入第三方jar包)

    Context上下文(虚拟路径)

    * 虚拟路径:理解访问路径(默认和项目名称是相同的)。
    * 发布到服务器中,作为访问路径。
    * 总结:在webapps的目录下的项目的名称其实是虚拟路径(访问路径),虚拟的路径默认情况下和项目名称是相同的。

    部署项目(两种方式)

    * 直接把项目复制到webapps的目录下
    
    * 原因:需要把你的系统部署到公司的服务器。
    * 在tomcat/conf/server.xml -- 在<Host>标签的中间配置虚拟路径(希望找到C盘oa的项目)
        <Context path="/itcast"  docBase="C:/oa" />
        * path="项目的虚拟路径(访问路径)"
        * docBase="指定真实项目的路径"
    
    * 也是配置虚拟路径的方式,但是不用去修改tomcat/conf/server.xml。
    * 创建一个XML的配置文件,名称可以是任意(例子:hello5.xml),它就会以文件的名称作为虚拟路径(访问路径)。我就会把hello5文件的名称作为虚拟路径。 http://localhost/hello5.
    * hello5文件书写的内容:
        * 文档声明
        * 直接编写<Context docBase="c:/ob"  />

    WEB通信

    * 访问一个网页,例如www.baidu.com,浏览器首先会去找你本地的hosts文件,如果没有找到,才会去找DNS域内里面找。

    配置虚拟主机(了解)

  • 相关阅读:
    pre 强制换行
    code标签和pre标签的定义
    angularJS绑定数据中对标签转义的处理二 与pre标签的使用
    angularJS绑定数据中对标签转义的处理
    html特殊字符
    js switch的使用 ng-switch的使用方法
    JS转换HTML转义符,防止javascript注入攻击,亲测可用
    MVC,MVP 和 MVVM 的图示 转自阮一峰先生网络日志
    AngularJs ngReadonly、ngSelected、ngDisabled
    你应该知道的jQuery技巧
  • 原文地址:https://www.cnblogs.com/chyxOne/p/9719607.html
Copyright © 2020-2023  润新知