CGI浏览器与服务器的交互
一直在做项目,跟着写前端后端,却没有思考一个问题:前端和后端为什么能够进行通信?为什么能够将HTML页面的内容传输给后台,然后又将结果反馈给前端?
寒假偶尔看到了这个问题,也解决了我的疑惑,这是基于CGI(公共网关接口)原理。
一、CGI是什么?
CGI是www技术中重要的技术之一,有着不可替代的作用。它是web应用程序与web服务器连接的接口,前端客户端和后台服务器之所以能够通信就是基于CGI.
CGI规范允许web服务器执行外部程序,并将它们输出发送给web浏览器,CGI将web的一组简单的静态超文本文档HTML变成了一个完整的新的交互式媒体。
CGI在物理上是一段程序,运行在服务器上,提供同客户端HTML页面的接口。
例如:用户留言功能的实现
用户在客户端输入留言信息,然后点击留言按钮提交(目前为止都是客户端的操作),浏览器将这些信息传送给服务器的CGI目录下的特定的CGI程序,然后CGI程序在服务器上按照预定的方法进行处理。处理结束后将信息反馈给客户端,这时候客户端会提示留言成功。
这整个的过程是CGI程序提供了一个与客户端交互的接口。
二、CGI如何操作的?
具体步骤:
(1)客户端发送请求
(2)web服务器激活CGI程序
(3)CGI程序对客户端的请求进行处理,并反馈给客户端
(4)web服务器中断与浏览器的的链接
(5)web浏览器将CGI处理的结果反馈到浏览器页面
三、CGI程序到底是什么?
CGI可以用任何一种语言编写,只要这种语言具有标准输入、标准输出和环境变量。一般的CGI程序就是perl程序。
Perl,一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。
CGI脚本不需要开发者开发,具体的可以上网搜下相关资料。
相关文章
- 简单的ftp服务器
- 用浏览器连接服务器-安装新的虚拟机
- 通过架设Cockpit服务 使用Web浏览器监测管理多个Linux服务器
- centos 5.6 简单搭建samba服务器
- CentOS安装及配置DNS服务器
- EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器同步输出http-flv协议流是怎么实现的?
- EasyNVR流媒体服务器网页兼容调试:ie浏览器下的接口调用成功但页面无法显示实时的数据
- Nginx深入使用-服务器名称(server_name)规则
- 从浏览器到服务器的4种跨域请求解决方案
- 阿里云服务器怎么用ip访问不了
- 服务器减少一半,TDengine在华自科技的落地实践
- 【RL-TCPnet网络教程】第36章 RL-TCPnet之FTP服务器
- 如何让 ABAP 服务器能够响应通过浏览器发起的自定义 HTTP 请求的试读版
- 文件服务器解决方案(项目源码)
- Python编程:socket实现简单的网站服务器
- SVN服务器的本地搭建和使用
- 适于初学者的免费虚拟主机和云服务器
- docker 搭建 ftp服务器
- Servlet — 如何让服务器控制浏览器10秒后跳转到另一个页面
- C++搭建websocket服务器并与浏览器js通信
- 服务器配置 centos一行命令安装python 3.6.8