本文共 4302 字,大约阅读时间需要 14 分钟。
Web :最早产生于欧洲量子实验室
http/0.9:仅纯文本(超链接),ASCIIHTML :HyperText Mark Language<h2>Title</h2>Browser:客户端(浏览器)HTTP :HyperText Transfer ProtocolURI :Uniform Resource Indentifier ,全局范围内统一命名方式统一 : 路径格式上的统一URL :Uniform Resource Locatorprotocol://HOST:port/path/to/file
web资源 : == web对象多个资源很可能被整合为一个html文档HTTP方法 :
GEThttp/1.0 :PUT,POST ,DELETEMIME : Multipurpose Internet Mail Extension ,多用途互联网邮件扩展(机制)SMTP : Simple Mail Transmission Protocol ,纯文本协议首部:image/jpegweb插件动态效果:Java ,Applet ,JRE动态网页:服务器端存储的文档非HTML格式,而是编程语言开发的脚本,脚本授受参数之后在服务器运行一次,运行完后之后会生成HTML格式的文档,把生成的文档发给客户端web :index.phpweb ---->procotol ---->php (运行index.php)TCP/IP工作在内核中动态网页 : 包含静态内容和动态内容
动态内容部分才需运行缓存 :HTTP报文 :请求报文, 响应报文状态代码 :
1xx :纯信息2xx :“成功”类的信息 (200, 201, 202)3xx : 重定向类的信息(301永久重定向,302临时重定向 ,304)4xx :客户端错误类的信息(404)5xx :服务器端错误类的信息http,tcp :三次握手,四次断开
http/1.1 :增强了缓存的功能 增加了长链接长链接 :(限制)闲时超时访问次数c/sc : Clinet Agent (browser, spider(蜘蛛))s :SeverClient——>request——>ServerURLServer——>response——>Client资源请求方法HTTP MethodGET,HEAD,POST,PUT,DELETE,CONNECTION,TRACR,OPTIONS状态码:HTTP Headers
Name:valueHost:www.baidu.comConnection:keep-aliveServer :主要工作响应请求日志记录Server响应请求模型:四种1、单进程/单线程模型2、多进程/多线程模型3、同时接受所有请求,状态查询基于事件驱动机制,状态转换通知机制,结合水平触发,边缘触发4、第二种+第三种httpd:MPMpreforkworkeventClient :
IEFirefoxChromeOperaSafariServer
Apache-->httpdIIS nginxlighttpdthttpd应用程序服务器
IIS (Microsoft)tomcat (apache, JSP ,open source)Websphere (IBM, JSP ,commodity)Weblogic (Oracle ,JSP ,commodity)JBoss (RedHat tomcat包装成的)NCSA , httpd :A Patchy Server = apache
FSF :GNU, GPLASF :Apache Software Foundation(web :httpdTomcathadoop)www.apache.orghttpd :web Server , Open Source2.2 ,2.4 ,2.01、事先创建进程2、按需维持适当的进程3、模块化设计,核心比较小,各种功能都模块添加(包括php)支持运行时配置,支持单独编译模块4、支持多种方式的虚拟主机配置虚拟主机:一个物理服务器,web程序也只有一个,可以访问不同站点Socket IP : Port基于IP的虚拟主机基于端口的虚拟主机基于域名的虚拟主机(落地项目最多)Method URL version header body 支持https协议(mod_ssl) 支持用户认证 支持基于IP或主机名的ACL 支持每目录的访问控制 支持URL重写 httpd安装 : rpm包 源码编译 httpd受SELinux控制,SELinux处于Disble或者Pesime httpd : /usr/sbin/httpd (MPM : prefork) httpd :root,root (mater process) httpd :apache,apache (worker process) /etc/rc.d/init.d/httpd Port :(80/tcp),(ssl :443/tcp) /etc/httpd :工作根目录,相当于程序安装目录 /etc/httpd/conf :配置文件目录 主配置文件 :httpd.conf /etc/httpd/conf.d/*.conf /etc/httpd/modules 模块目录 /etc/httpd/logs ---->/var/log/httpd 日志目录 日志文件有两类:访问日志access_log, 错误日志: err_log /var/www html cgi-bin cgi :Common Gateway Interface 一种协议 Client ---->httpd (index.cgi) -->Spawn Process perl,python ,java (Servlet, JSP ), php directive value 指令平区分字符大小写 value则 fastcgi : 程序 :指令+数据 数据 :数据库服务 应用服务器和数据库服务器 都是CPU-bound CPU密集型 web服务器分层 静态层 apache 应用层 php 数据库层 MySQL
nginx :反向代理
URL路径跟本地文件系统路径不是一码事儿,URL是相对于DocumentRoot的路径而言的
Options :None :任何选项都不支持Indexes :允许索引目录FollowSynLinks :允许访问符号链接指向的原文件Includes :允许执行服务器端包含(SSI)ExecCGI :允许运行CGI脚本 All :支持所有选项Order :用于定义基于主机的访问功能的,IP,网络地址或主机定义访问控制机制格式: Order allow , deny allow from deny from 地址的表示方式:IPnetwork/netmaskHOSTNAMEDOMAINNAMEpartial IP172.16,(172.16.0.0/16)elinks URL
-dump-source用户验证配置PV :Page View 每天的页面访问量
UV :User View, 每天的独立IP访问量Alias 路径别名
Apache虚拟主机 :apache :服务器, Host ,物理主机虚拟主机 :
Apache服务:服务于多个不同的站点Apache :
Apache 2.2
NameVirtualHostApache 2.4
ServerName :ServerAliasDocumentRoot :<Directory "">OptionAllowOverride</Directory>Alias 路径别名ErrorLogCustomLog<Location "" >
</Location> 定义它使用的方法
ScriptAliasCGI :Common GateWay Interface
使用虚拟主机必须先取消中心主机,注释中心主机的DocumentRoot即可虚拟主机的定义:<VirtualHost HOST></VirtualHost>
基于IP,HOST的写法中心主机虚拟主机基于IPIP1:80IP2:80基于端口IP:80IP:8080基于域名*:80主机名不同配置信息
设定默认虚拟主机
Locatioan定义URL路径
转载于:https://blog.51cto.com/14087650/2395608