其他分享
首页 > 其他分享> > Tomcat配置二级域名的分配与访问

Tomcat配置二级域名的分配与访问

作者:互联网

 

 

 

 

 

 

回顾tomcat

Tomcat是Apache软件基金会(Apache Software Foundation)的一个顶级项目,由Apache, Sun和其他一些公司及个人共同开发,是目前比较流行的Web服务器之一.作为一个开源的,小型的轻量级应用服务器,Tomcat深受广大程序员的喜爱,具有占用系统资源少,扩展性好,支持负载均衡与邮件服务等开发应用系统常用的功能; 而且它还在不断地改进和完善中, 任何一个感兴趣的程序员都可以更改它或在其中加入新的功能.

虽然Tomcat易于使用,便于部署,但Tomcat本身是一个非常复杂的系统,包含了很多功能模块.这些功能模块密切合作,各司其职,构成了Tomcat的核心结构. 作者从最基本的HTTP请求开始,直至使用JMX技术管理Tomcat中的应用程序,逐步深入,逐一剖析Tomcat的基本功能模块,并配以....略

--节选<深入剖析Tomcat>

 

 

 

Java Web 服务器的运行
Web服务器也称为超文本传输协议 (HyperText Transfer Protocol, HTTP)服务器, 因为它使用HTTP与其客户端(通常是Web浏览器)进行通信,

基于Java的Web服务器会使用两个重要的类: java.net.Socket 类和 java.net.ServerSocket 类, 并通过发送 HTTP 消息进行通信.

HTTP

HTTP允许Web服务器和浏览器通过Internet发送并接收数据,是一种基于"请求-响应"的协议.

客户端请求一个文件,服务器对该请求进行响应. HTTP使用可靠的TCP连接, TCP协议默认使用TCP 80端口.

HTTP协议的第一个版本是HTTP/0.9, 后来被HTTP/1.0取代,随后 HTTP/1.0 又被当前版本 HTTP/1.1取代.

HTTP/1.1定义于 RFC (Request for Comment,请求注解) 2616中... 可以从

http://www.w3.org/Protocols/HTTP/1.1/rfc2616.pdf 下载

注意: 本节简单介绍HTTP1.1 , 目的是帮助你了解Web服务器应用程序发送的消息

在HTTP中,总是由客户端通过建立连接并发送HTTP请求来初始化一个事务的. Web服务器端

并不负责联系客户端或建立一个到客户端的回调连接. 客户端或服务器端可提前关闭连接.

例如,当使用Web浏览器浏览网页时, 可以单击浏览器上的Stop按钮来停止下载文件,这样就

有效地关闭了一个Web服务器的HTTP连接.

HTTP请求包含以下三部分:

- 请求方法 --- 统一资源标识符(Uniform Resource Identifier, URI) -- 协议/版本

- 请求头

- 实体

HTTP请求的示例如下所示:

HTTP响应

与HTTP请求类似, HTTP响应也包括三部分:

- 协议 -- 状态吗 -- 描述

- 响应头

- 响应实体段

下面是一个HTTP响应的示例:

 

 HTTP响应头的第一行与HTTP请求头的第一行类似. 第一行指明了使用的协议是HTTP/1.1

请求发送成功(状态吗200表示请求成功), 一切都正常执行.

Socket类

套接字是网络连接的端点, 套接字使应用程序可以从网络中读取数据,可以向网络中写入数据.

不同计算机上的两个应用程序可以通过连接发送或接收字节流. 以此达到相互通信的目的.

为了从一个应用程序向另一个应用程序发送消息, 需要知道另一个应用程序中套接字的IP地址和端口号.

在Java中, 套接字由 java.net.Socket 表示.

要创建一个套接字, 可以使用 Socket 类中众多构造函数中的一个. 其中一个构造函数接收两个参数: 主机名和端口号

public Socket (String host, int port)

其中参数host是远程主机的名称或IP地址,参数port是连接远程应用程序的端口号.

例如,想要通过80端口连接baidu.com, 可以使用下面的语句创建 Socket 对象:

new Socket ("baidu.com" , 80)

一旦成功地创建了Socket类的实例, 就可以使用该实例发送或接收字节流. 要发送字节流,

需要调用Socket类的getOutputStream() 方法获取一个 java.io.OutputStream对象.

要发送文本到远程应用程序, 通常需要使用返回的 OutputStream 对象创建一个 java.io.PrintWriter 对象.

若想要从连接的另一端接收字节流, 需要调用 Socket 类的 getInputStream() 方法,

该法会返回一个 java.io.InputStream 对象.

...略

 

   

标签:Web,HTTP,Socket,Tomcat,二级域名,应用程序,访问,请求
来源: https://blog.51cto.com/u_11956468/3014535