cgi接口原理(boa服务器)-程序员宅基地

技术标签: c语言  服务器  

CGI:通用网关接口(Common Gateway Interface)是一个Web服务器主机提供信息服务的标准接口。通过CGI接口,Web服务器就能够获取客户端提交的信息,转交给服务器端的CGI程序进行处理,最后返回结果给客户端。

boa服务器和CGI程序之间是通过标准输入输出(重定向到管道)来进行数据传递的,而这个过程需要环境变量的协作方可实现。可以支持多个cgi同时运行。

1.服务器将URL指向一个应用程序
2.服务器为应用程序执行做准备
3.应用程序执行,读取标准输入和有关环境变量
4.应用程序进行标准输出

这里写图片描述

CGI数据传输方式
REQUEST_METHOD:它的值一般包括两种:POST和GET,但我们写CGI程序时,最后还要考虑其他的情况。
1.POST方法
如果采用POST方法,那么客户端来的用户数据将存放在CGI进程的标准输入中,同时将用户数据的长度赋予环境变量中的CONTENT_LENGTH。
2.GET方法
在该方法下,CGI程序无法直接从服务器的标准输入中获取数据,因为服务器把它从标准输入接收到得数据编码到环境变量QUERY_STRING(或PATH_INFO)。
3.POST与GET的区别
以 GET 方式接收的数据是有长度限制,而用 POST 方式接收的数据是没有长度限制的。并且,以 GET 方式发送数据,可以通过 URL 的形式来发送,但 POST方式发送的数据必须要通过 Form 才到发送。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_55163060/article/details/131242704

智能推荐

Sketch_sketch是什么csdn-程序员宅基地

文章浏览阅读470次。一、Sketch的简介Sketch是什么?Sketch是一款轻量、高效的矢量设计工具,它在矢量编辑基础上,提供了基本的位图样式支持(例如模糊和颜色调节),支持矩形工具、文字工具、布尔运算等功能。你可以把它看做是简化版的Photoshop。但需要注意的是,Sketch不是一款位图编辑器。这就是说,你如果想做的是照片修正、画笔绘图,这款软件就不合适。Sketch的优缺点优点:小清新颜值高 :界面简洁美好,功能清晰。无悬浮面板,选择一个对象/图层(objects)就会展示对应检查器(inspector_sketch是什么csdn

torch报错缺少libcudnn_ops_infer.so.8解决方法-程序员宅基地

torch报错缺少libcudnn_ops_infer.so.8,解决方法:验证cudnn版本,参考知乎修改路径。

java 错误 无效的源发行版_java: 错误: 无效的源发行版:19-程序员宅基地

文章浏览阅读2.4k次。第四步,把source和dependencies里的language level改成对应的。第三步,找到这个,把这两个对应起来,比如我的jdk是1.8,对应下面的就是8。该bug出现时因为新建项目的时候,jdk版本没有设置好。第二步骤,点击project structure。第一步,在idea里打开FIle。uage level改成对应的。_java: 错误: 无效的源发行版:19

Ubuntu16.04下ROS的安装_ubuntu16.04安装ros-程序员宅基地

文章浏览阅读8k次,点赞8次,收藏95次。ROS的安装与使用1.ROS安装1.1 安装前的准备1)ubuntu系统:虚拟机或者双系统都可以,ubuntu 16.04官方镜像传送门: Ubuntu 16.04.7 LTS (Xenial Xerus)2)更新软件源:国内使用ubuntu自带的官方软件源会很慢,建议首先更新为国内镜像软件源,没有更新的可按如下方法更新,更新过了的直接跳到1.2节安装。3)软件更新界面开启软件来源ROS需要在ubuntu系统下使用,而且ROS版本和ubuntu系统版本一一对应,目前比较新的版本对应如下:_ubuntu16.04安装ros

vue自适应布局-程序员宅基地

文章浏览阅读1.1w次,点赞5次,收藏57次。vue自适应布局3种方法:1.传统布局 :写个js全局引入页面即可 //方式一 const deviceWidth = document.documentElement.clientWidth || document.body.clientWidth; document.querySelector('html').style.fontSize = deviceWidth / 7.5 + 'px'; //方式二 document.documentElement.styl_vue自适应布局

解决ubuntu下中文乱码问题_why: charset is auto-detected by bom current encod-程序员宅基地

文章浏览阅读414次。1.按快捷键Ctrl+Alt+T进入命令行终端;2.执行命令: gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8','GB18030','GB2312','GBK','BIG5','CURRENT','UTF-16']"即可解决。_why: charset is auto-detected by bom current encoding: 'utf-16be

随便推点

BUUCTF:[ACTF2020 新生赛]Include-程序员宅基地

文章浏览阅读794次。题目地址:https://buuoj.cn/challenges#[ACTF2020%20%E6%96%B0%E7%94%9F%E8%B5%9B]Include文件包含直接伪协议读取flag.php?file=php://filter/convert.base64-encode/resource=flag.phpPS C:\Users\Administrator> php -r "var_dump(base64_decode('PD9waHAKZWNobyAiQ2FuIHlvdSBma._actf2020 新生赛]include

Vant 1.0 发布:轻量、可靠的移动端 Vue 组件库-程序员宅基地

文章浏览阅读162次。Vant 是有赞前端团队维护的移动端 Vue 组件库,提供了一整套 UI 基础组件和业务组件。通过 Vant 可以快速搭建出风格统一的页面,提升开发效率。一、关于 1.0距离 Vant 首次发布刚好过去了半年时间,在这半年时间里 Vant 团队广泛吸纳社区的反馈和建议,持续对组件进行打磨、优化,使得 Vant 逐渐成长为一个轻量、可..._vant npm 1.0

【unity实战】手戳一个类似星露谷物语的建筑系统(附工程源码)_unity版星露谷物语 制作-程序员宅基地

文章浏览阅读482次。欢迎来到【unity实战】系列!本篇文章将带你一起探索一个令人兴奋的主题——建筑系统。如果你曾经沉浸在《星露谷物语》这样的游戏中,梦想着自己能够创建属于自己的农场、村庄或城市,那么你来对地方了!在本文中,我们将使用Unity引擎来实现一个类似于《星露谷物语》的建筑系统。通过简单的点击与拖拽操作,你将能够在虚拟世界中建造各种各样的建筑物,如房屋、农作物、商店等。这个建筑系统不仅会给你带来乐趣和创造力的发挥空间,还将涉及到一些基本的碰撞检测、资源管理和可交互性的实现。_unity版星露谷物语 制作

Django之Mongodb mongoengine使用大全(持续更新)_djongo mongoengine所有集合名称-程序员宅基地

文章浏览阅读2k次。字段类型:StringField,字符串。ListField,列表。列表里还可以传入字段规定列表内的字段类型,例如ListField(StringField(max_length=30))ReferenceField, 这是一个保存相关文档的filedStringFiled(regex=None,max_length=None,min_lenght=None) #字符串类型IntFie..._djongo mongoengine所有集合名称

码code | 9款小程序开源框架和组件库,值得收藏!_微信小程序 开源组件-程序员宅基地

文章浏览阅读1.9k次。作为一名小程序开发者,面对复杂的代码和运行逻辑,也有更多的需求:想要一套代码直接跑多端!想要直接套用框架实现开发!想要在小程序内拥有微信同款UI!那就不妨试试小程序开源框架和组件库,开发小程序项目也能变得更加简单,高效。今天我们收集了些实用的开发框架、组件库以及腾讯官方插件,大家可以了解一下。开发框架WePyWePy是一款让小程序支持组件化开发的框架,通过预编译的手段让开发者..._微信小程序 开源组件

ORB-SLAM2源码分析_orbslam2源码-程序员宅基地

文章浏览阅读359次。orbslam2、学习源码和b站视频(up:嘉然今天吃带变)相关_orbslam2源码

推荐文章

热门文章

相关标签