web服务器、应用服务器和web应用框架

  • web服务器:负责处理http请求、响应静态文件,常见的有ApacheNginx以及微软的IIS
  • 应用服务器:负责处理逻辑的服务器。比如phppython的代码是不能直接通过Nginx这种web服务器来处理的,只能通过应用服务器来处理,常见的应用服务器有uwsgitomcat等。
  • web应用框架:某种语言封装了常用的web功能的框架就是web应用框架flaskdjango以及Java的SSH(Structs2+Spring3+Hibernate3)框架都是web应用框架。

也就是说,如果客户端发送的请求是请求一个静态文件,比如图片、css或者js文件,那么web服务器就可以直接作出响应并返回相应的内容;但当客户端发起的是请求数据库数据等逻辑相关的请求时,web服务器没有能力处理这样的逻辑请求,它会将该请求转发给应用服务器,让应用服务器进行对应的逻辑响应;如果你应用了应用框架,那么应用服务器就会将接收到的请求转发到web应用框架进行处理。

Content-type和Mime-type的作用和区别

两者都是指定  服务器和客户端之间  传输数据的类型,区别如下:

  • Content-type:既可以指定传输数据的类型,也可以指定数据的编码类型,比如text/html;charset=utf-8
  • Mime-type:不能指定传输的数据编码类型,如text/html

常用的数据类型如下:

  • text/html  (默认的,html文件)
  • text/plain  (纯文本)
  • text/css  (css文件)
  • text/javascript  (js文件)
  • application/x-www-form-urlencoded  (普通的表单提交)
  • multipart/form-data  (文件提交)
  • application/json(json传输)
  • application/xml(xml文件)
 

如果大家想了解上面的内容可以去:

http://www.w3school.com.cn/tags/att_form_enctype.asp

http://www.w3school.com.cn/tags/tag_form.asp

http://tool.oschina.net/commons/

这里查看一下,会对你的理解有帮助的。

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

Flask第二篇——服务器相关的更多相关文章

  1. Flask最强攻略 - 跟DragonFire学Flask - 第二篇 Flask 中的 Render Redirect HttpResponse

    1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi" ...

  2. flask第二篇 三剑客+特殊返回值

    1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi" ...

  3. Flask 第二篇

    Flask 中的 Render Redirect HttpResponse 1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2 ...

  4. 第二篇 Replication:分发服务器的作用

    本篇文章是SQL Server Replication系列的第二篇,详细内容请参考原文. 分发服务器是SQL Server复制的核心组件.分发服务器控制并执行数据从一个服务器移动到另一个服务器的进程. ...

  5. 第二篇 Flask 中的 Render Redirect HttpResponse

    第二篇 Flask 中的 Render Redirect HttpResponse   1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返 ...

  6. 【译】第二篇 Replication:分发服务器的作用

    本篇文章是SQL Server Replication系列的第二篇,详细内容请参考原文. 分发服务器是SQL Server复制的核心组件.分发服务器控制并执行数据从一个服务器移动到另一个服务器的进程. ...

  7. 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

  8. (转)从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    原文地址:  http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集 ...

  9. [转]Android开源项目第二篇——工具库篇

    本文为那些不错的Android开源项目第二篇--开发工具库篇,主要介绍常用的开发库,包括依赖注入框架.图片缓存.网络相关.数据库ORM建模.Android公共库.Android 高版本向低版本兼容.多 ...

随机推荐

  1. 深度学习中 Batch Normalization为什么效果好

    看mnist数据集上其他人的CNN模型时了解到了Batch Normalization 这种操作.效果还不错,至少对于训练速度提升了很多. batch normalization的做法是把数据转换为0 ...

  2. Gruntjs提高生产力(三)

    以下例子来自真实项目,有所删减 grunt-test project 目录结构如下 一我的目的: 1.在src-dev目录中开发最终产出于src目录 2.src-dev中的index目录相当于一个wi ...

  3. 简明 Nginx Location Url 配置笔记

    基本配置 为了探究nginx的url配置规则,当然需要安装nginx.我使用了vagrant创建了一个虚拟环境的ubuntu,通过apt-get安装nginx.这样就不会污染mac的软件环境.通过vr ...

  4. Qt5全局热键-QxtGlobalShortcut

    最近做一个项目需要注册全局热键,在网上搜索发现有个第三方库 libqxt 中给出一个比较好的跨平台的解决方案,就是 QxtGlobalShortcut. 但是编译过程中发现这个库用到的QAbstrac ...

  5. RabbitMQ其他(八)

    1 RabbitMQ消息队列的小伙伴: ProtoBuf(Google Protocol Buffer) 什么是ProtoBuf? 一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序 ...

  6. How to create Oracle ASM devices using device-mapper multipath devices in Red Hat Enterprise Linux 6

    How to create Oracle ASM devices using device-mapper multipath devices in Red Hat Enterprise Linux 6 ...

  7. MySQL,SqlServer数据库关键字在程序中处理

    这个原来是SqlServer的数据库,现在改成MySQL的,由于两个数据库有些差别.在程序中怎么处理.为了给自己提个醒,把它记录下来. 这是MySQL数据库 Public Sub display() ...

  8. ['1','2','3'].map(parseInt) 返回的是什么?

    返回的是:[1,NaN,NaN] 首先我们先分析一下  parseInt  函数: parseInt()函数解析一个字符串参数,并返回指定基数的整数(数学系统中的基数). 它可以有两个参数,用法:pa ...

  9. ubuntu安装搜狗输入法的相关问题

    最近换了一次电脑,要重新装系统,就选择了ubuntu14.04 LTS版本的,这个版本官方支持到2019年了,所以相对来说比较稳定,也不用担心软件源的问题.不像14.10那样,现在官方已经没有软件源的 ...

  10. Linux下的网络设定

    一.IP相关介绍 1.IP是internet protocal的简称,也叫网络进程. 2.ipv4全称internet protocal version 4.它是由32个二进制组成:改为十进制的话,一 ...