文章目录
百度百科参考链接
参考链接–主1
参考链接–主2
参考链接–副1
服务器端与客户端进行动态交互的常见方式有多种,:CGI 技术就是其中之一,CGI 是比较原始的开发动态网站的方式。
其他的还有:
- PHP(Personal Home Pages)是一种服务器端的嵌入HTML的脚本语言
- JSP(Java Server Pages)是基于Java的技术,用于创建可支持跨平台及跨Web服务器的动态网页。
- ASP(Active Server Pages)是微软公司提供的开发动态网页的技术,具有开发简单、功能强大等优点。
1. 了解什么是动态网页
-
静态网页
-
输入网址后,出来的页面是静态的,用户无法交互,只有网站所有者改变了页面内容才会变动。
-
例
在网站的整体架构中,Web Server(如nginx,apache)只是内容的分发者,对客户端的请求进行应答。如果客户端请求的是index.html这类静态页面,那么Web Server就去文件系统中找对应的文件,找到返回给客户端(一般是浏览器),在这里Web Server分发的就是是静态数据。
整个过程如下图:
-
-
动态网页
-
和用户有交互的就是动态网页,如用户点击什么就相应的加载出对应的内容。
-
例
对于像index.php这类的动态页面请求,Web Server根据配置文件知道这个不是静态文件,则会调用PHP 解析器进行处理然后将返回的数据转发给客户端(浏览器)。整个过程如下图:
在这个过程中,Web Server并不能直接处理静态或者动态请求,对于静态请求是直接查找然后返回数据或者报错信息,对于动态数据也是交付给其他的工具(这里的PHP解析器)进行处理。Web Server和处理工具(这里的php-fpm)是怎样进行交互的呢?传输的是那些数据呢?这些数据的格式又是怎样的呢?
由此便引出了主角:CGI
-
2. 什么是 CGI
2.1 CGI 概念
-
概念(百度百科):公共网关接