3.3 静态内容与动态内容
现在我们从编程实现的角度看一看服务器是如何响应客户端请求的。当客户端做出一个请求,比如
GET /index.html
服务器如何返回相应的资源?这取决于/index.html代表的资源是否含有服务器动态生成的内容。比如我们需要index.html包含服务器当前的时间:
<!doctype html>
<html>
<body>
现在是2016年 7月 3日 星期日 17时42分32秒 CST
</body>
</html>
每次GET /index.html都会得到不同的内容。这就是服务器生成的动态内容。相反,如果index.html包含的内容固定不变,如
<!doctype html>
<html>
<body>
Hello!
</body>
</html>
这就是静态内容。
对于静态内容,我们不需要花力气去编程就能通过HTTP提供它们——现有的HTTP服务器,如Apache、Nginx等等都帮我们做好了:只要把这些静态的文件存放在指定的目录下(这些目录由服务器的配置文件指定,如Apache的DocumentRoot或者Nginx的root参数),服务器就会用它们来响应HTTP请求。
动态内容则需要靠服务器端编程实现。