CGI原理
来源:互联网 发布:办公楼网络布线图 编辑:程序博客网 时间:2024/05/19 22:49
CGI简介
CGI全称是“通用网关接口”(Common Gateway Interface),它可以让一个客户端,从网页浏览器向执行在Web服务器上的程序请求数据。CGI描述了客户端和这个程序之间传输数据的一种标准。CGI的一个目的是要独立于任何语言的,所以CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等。
CGI运行原理
- 客户端访问某个 URL 地址之后,通过 GET/POST/PUT 等方式提交数据,并通过 HTTP 协议向 Web 服务器发出请求。
- 服务器端的 HTTP Daemon(守护进程)启动一个子进程。然后在子进程中,将 HTTP 请求里描述的信息通过标准输入 stdin 和环境变量传递给 URL 指定的 CGI 程序,并启动此应用程序进行处理,处理结果通过标准输出 stdout 返回给 HTTP Daemon 子进程。
- 再由 HTTP Daemon 子进程通过 HTTP 协议返回给客户端。
- 上面的这段话理解可能还是比较抽象,下面我们就通过一次 GET 请求为例进行详细说明。
如图所示,本次请求的流程如下:
- 客户端访问 http://127.0.0.1:9003/cgi-bin/user?id=1
- 127.0.0.1 上监听 9003 端口的守护进程接受到该请求
- 通过解析 HTTP 头信息,得知是 GET 请求,并且请求的是
/cgi-bin/
目录下的user
文件。 - 将 uri 里的
id=1
通过存入QUERY_STRING
环境变量。 - Web 守护进程 fork 一个子进程,然后在子进程中执行 user 程序,通过环境变量获取到
id
。 - 执行完毕之后,将结果通过标准输出返回到子进程。
- 子进程将结果返回给客户端。
0 0
- CGI原理
- CGI原理
- CGI原理
- CGI程序工作原理
- CGI工作原理 - HTML
- CGI技术原理
- CGI原理及其性能
- nginx、cgi通信原理
- CGI的工作原理
- CGI技术原理
- nginx、cgi通信原理
- cgi php-cgi,PHP底层原理
- CGI接口原理及实现
- CGI接口原理及实现
- CGI的原理与实现
- CGI接口原理及实现
- CGI的作用和原理
- CGI接口原理及实现
- wpf页面编辑器原理
- Linux中的文件描述符
- Java注解
- PargerAdapter用法详解
- 登录的时候设置发送验证码
- CGI原理
- Android Handler,Looper,MessageQueue 机制
- erlang 数据结构
- Android 屏幕旋转相关解析
- Android通用的搜索框
- mysql 数据类型
- /bin,/sbin,/usr/sbin,/usr/bin 目录
- SQL中的cast()和convert()函数
- 简化原生效果_集成UITableViewCell左滑多个按钮