一、Web服务
HTTP:HyperText Transfer Protocol: 超文本传输协议
1、Web:
最初的http版本:0.9 :仅纯文本(超链接),ASCII
HTML:HyperText Mark Language
<h2> Title</h2>
Browser:客户端
1.1.1.1:web,a.html
2.2.2.2:web,a.html
URI:Uniform Resource Indentifier,全局范围内。
统一:路径格式上的统一。
URL:Uniform Resource Locator
protocol://HOST:port/path/to/file eg: http://www.majinlei.com/download/linux.tar.gz
2、web资源: 多个资源很可能被整合为一个html文档
3、http方法:
GET http/1.0 :PUT ,POST ,DELETE
4、HTTP报文:请求报文、响应报文
请求报文语法:
<method> <request-URL> <version>
<headers>
<entity-body>
状态代码:
1xx:纯信息 ; 2xx:“成功”类的信息(200); 3xx:重定向类的信息(301,302,304) ; 4xx:客户端错误类的信息(404); 5xx:服务器端错误类的信息
5、Web服务器的主要操作:
(1)建立连接-接受或拒绝客户端连接请求;
(2)接受请求-通过网络读取HTTP请求报文;
(3)处理请求-解析请求报文并做出相应的动作;
(4)访问资源-访问请求报文中相关的资源;
(5)构建响应-使用正确的首部生成HTTP响应报文;
(6)发送响应-向客户端发送生成的响应报文;
(7)记录日志-当已经完成的HTTP事务记录进日志文件;
6、应用程序服务器
IIS
Tomcat(apache JSP open source)
Websphere (IBM,JSP,commodity)
weblogice(Oracle,JSP,commodity)
JBoss(RedHat)
7、httpd的特性:
事先创建进程;按需维持适当的进程;模块手机,核心比较小,各种功能都要模块添加(支持运行配置,支持单独变异模块);支持多种方式的虚拟主机配置(socket IP:port);支持https协议(mod_ssl);支持用户认证;支持每目录的访问控制;支持URL重写,
虚拟主机: 基于IP的虚拟主机;基于端口的虚拟主机;基于域名的虚拟主机;
8、httpd:
directive value; 指令不区分字符大小写;value则根据需要有可能要区分
9、MPM:Multi Path Modules
mpm_winnt
prefork(一个请求用一个进程响应)
worker(一个请求用一个线程响应,(启动多个进程,每个进程生成多个线程))
event(一个进程处理多个请求)
10、Options:
None:不支持任何选项
Indexes:允许索引目录
FollowSYNLinux:允许访问符号链接指向的原文件
Includes:允许执行服务端包含(SSI)
ExecCGI:允许运行CGI脚本。
All:支持所有选项
11、order:用于定义基于主机的访问功能的,IP,网络地址或主机定义访问控制机制
order allow,deny
allow from
deny form
eg:Order deny,allow
deny from 192.168.0.0/24