HTTP && appache

本文详细介绍了web架构的各个层面,包括负载均衡、业务层、通信层、数据库层以及常用的缓存技术和数据库类型。同时,深入探讨了运维架构,涵盖Nginx、HAProxy、LVS等负载均衡方案,以及大中型网站的数据库存储层架构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.web架构

负载均衡LVS NGINX (对正则表达支持优秀) HAProxy
业务层Tomcat Jetty JBOSS weblogic Resin(缓存强) Apache-php RS
业务见通信层消息队列方式:AMQP协议,非AMQP,各ESB实现,DUBBO
数据库层常用缓存技术:memcacbed redis tair
关系数据库 键值数据库 列簇数据库
文件存储 图数据库 文档数据库

2.运维架构

  • 独立的Nginx负载或者HAProxy方案
  • LVS(DR)+ Nginx方案
  • DNS轮询+LVS+Nginx方案
  • 智能DNS+LVS
数据库存储层
大中型网站架构

3.apache

1.安装apache

(1)yum -y install httpd,http-devel,httpd-manual

2.apache主要工作目录

apache 的主要工作目录

3.apache的httpd.conf的主要配置项

3.2使用虚拟目录为多部门建子网站

  • 1.创建虚拟目录存放位置及虚拟目录默认首页文件
  • 2. 创建、编辑虚拟目录子配置文件。默认情况下,位于/etc/httpd/conf.d/目录下的所有以.conf结尾的文件都会被加载作为Apache的配置信息,为此,在/etc/httpd/conf.d/下新建一个子配置文件(如vdir.conf)来配置虚拟目录。

4.http

  • http:超文本传输协议
  • URL:统一资源定位符:由协议,主机和端口以及文件名三部分构成
  • http工作原理
  • http非持久性连接
    1. 非持久性连接:获取后立即释放连接
    2. 持久性连接:在一个连接中可以进行多次文档的请求和响应
    3. 无状态性:服务器不记录客户端的访问记录,服务器不知道这个客户端曾经是否访问过,使其可以更容易的支持大量并发的请求
  • http请求方法
方法含义方法含义
GET请求读取一个web页面HEAD请求读取一个web页面的头部
post 附加一个命名资源PUT请求存储一个web页面
delete删除web页面trace用于测试,要求服务器送回收到的请求
connect用户代理服务器option查询特定的选项
  • 响应报文中的状态码(status-code)
状态码含义例子
1xx通知信息100=服务器正在处理客户请求
2xx成功200=访问成功
3xx重定向301=页面改变了位置
4xx客户错误403=禁止页面;404=页面错误
5xx服务器错误500=服务器内部错误;503=以后再试
  • 首部字段或者消息头
  • UA字段:user-agent:浏览器标识(操作系统标识,加密等级标识;浏览器语言)渲染引用标识,版本信息
  • location:web服务器告诉浏览器,试图访问的对象已经被一道别的位置,到该头部指定的位置去取
  • Session
  • cookie: 保存SessionID的方式可以采用Cookie,这样在交互过程中浏览器可以自动的按照规则把这个SessionID发回给服务器。Cookie的命名方式类似于SessionID。有时Cookie被人为的禁止,所以出现了其他机制以便在Cookie被禁止时仍然能够把SessionID传递回服务器。这种技术叫做URL重写,就是把SessionID直接附加在URL路径的后面,附加方式也有两种,一种是作为URL路径的附加信息,表现形式为http://www.wantsoft.com/index.asp;jsessionid= ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng!-145788764 。

5.SSL

  1. 概述:它是为了保证正常运行与tcp上的任何协议如http,ftp,smtp,telnet的通信,最常用的是用ssl来保护http的通信.
    • ssl的优点是他与应用层协议无关的,高层的协议能透明的建立在ssl协议上
    • 它在应用层协议之前就完成了加密算法,通信密钥的协商以及服务器的认证工作,在此之后应用层协议所传输的数据都会被加密,从而保证通信的安全性.
    • ssl解决的问题:客户对服务器的身份认证,服务器对客户的身份认证,建立2服务器与客户之间安全的数据通道
  2. ssl协议分析:
    • ssl是一个分层的协议共两层:ssl记录层(ssl record protocol)位于传输层只上,用于封装高层协议的数据;ssl握手协议(ssl handshake protocol)允许服务方和客户方互相认证,并在应用层协议传送数据之前协商出一个加密算法和会话密钥.
    • ssl 连接:
      1. 一个连接是一个提供一种合适类型服务的传输(OSI分层的定义)
      2. SSL的连接是点对点的关系。
      3. 连接是暂时的,每一个连接和一个会话关联。
    • ssl会话:
      • 一个SSL会话是在客户与服务器之间的一个关联。会话由Handshake Protocol创建。会话定义了一组可供多个连接共享的密码安全参数。
      • 会话用以避免为每一个连接提供新的安全参数所需昂贵的协商代价。
ssl加密过程
  • ssl协议的脆弱性分析
    • 客户端假冒: –因为SSL协议设计初衷是对Web站点及网上交易进行安全性保护,使消费者明白正在和谁进行交易要比使商家知道谁正在付费更为重要,为了不致于由于安全协议的使用而导致网络性能大幅下降, SSL协议并不是默认地要求进行客户鉴别,这样做虽然有悖于安全策略,但却促进了SSL的广泛应用。 –针对这个问题,可在必要的时候配置SSL协议,使其选择对客户端进行认证鉴别。
    • 无法保护udp的应用
    • 不能对抗流量分析: •由于SSL只对应用数据进行保护,数据包的IP头和TCP头仍然暴露在外,通过检查没有加密的IP源和目的地址以及TCP端口号或者检查通信数据量,一个通信分析者依然可以揭示哪一方在使用什么服务,有时甚至揭露商业或私人关系的秘密。
    • 进程中主密钥泄漏: •除非SSL的工程实现大部分驻留在硬件中,否则主密钥将会存留在主机的主存储器中,这就意味着任何可以读取SSL进程存储空间的攻击者都能读取主密钥,因此,不可能面对掌握机器管理特权的攻击者而保护SSL连接,这个问题要依靠用户管理策略来解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cpongo11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值