自身条件:主要学习前端,会一点 Python
因为想自己写一点小工具,但对具体的技术手段不是特别了解(目前只用过传统的 CGI,看 v 站说已经是上古时代的技术了),想请教一下具体内容。
我对 CGI 和 Django 在后端的应用方式大致理解如下(我理解 CGI 是一种协议),不知是否正确:
- CGI:可以用任何支持标准输入输出的语言,像编写普通的可以在终端内运行、进行标准输入输出的脚本一样写。客户端向 Apache 等 web server 请求 CGI 脚本,web server 调用对应的解释器执行并返回执行结果。
- FastCGI:需要按照 FastCGI 所要求的格式来写。web server 向常驻的 FastCGI server 请求,由 FastCGI server 负责执行和返回结果。
- Django 等:将后端执行和页面渲染组合在一起的框架,可以直接当作 web server 用(实际运用中一般通过 Apache 或 Nginx 进行反向代理?)。
另外我不太理解各种技术在实际项目中的运用(目前处于能用就行阶段),以下是我对应用场景的理解:
- CGI:我写了一个小型计算器,每天就几百个人用,和后端的交互只有通过 AJAX 来保存、读取计算结果。
- FastCGI:我写了一个物品查询数据库,用户需要经常向后端请求内容。
- Django:(接上一条的数据库)直接根据用户请求,向用户返回已经渲染好的网页,而不是通过 AJAX 来请求内容。(类似于 PHP ?)
以上是我的理解,不知道是否有误或者是有更恰当的实现方式。
Thanks in advance.