【自学Python】书笔记 26Python动态Web开发基础

优采云 发布时间: 2022-08-26 05:32

  【自学Python】书笔记 26Python动态Web开发基础

  一、Python动态Web开发基础

  从软件的应用领域划分,通常将软件分为桌面软件、Web软件和移动软件三大类。

  在计算机软件开发应用中,Web软件开发是最常见的一种典型应用,特别是随着动态网站的不断发展,Web编程已经成为程序设计中的最重要应用领域之一。

  在当今Web开发技术条件下,最主流的Web编程技术主要有ASP.NET、PHP、Java等。

  作为一门功能强大的面向对象编程语言,Python语言也可以像其他经典开发语言一样用来开发Web应用程序。

  二、Python CGI编程

  CGI是Common Gateway Interface的缩写,表示通用网关接口。

  CGI是一段运行在服务器上的程序,例如运行在HTTP服务器上提供同客户端HRML页面的接口。

  三、CGI介绍

  CGI是WWW技术中最重要的技术之一,有着不可替代的重要地位。

  CGI是外部应用程序与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的过程。

  CGI规范允许Web服务器执行外部程序,并将它们的输出发生给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。

  处理过程的第一步是Web服务器从客户端接到了请求(即GET或者POST),并调用相应的应用程序。

  然后它等待HTML页面,与此同时,客户端也在等待。

  一旦应用程序处理完成,它会将生成的动态HTML页面返回服务器端。

  接下来,服务器端再将这个最终结果返回给用户。

  对于表单处理过程,服务器与外部应用程序交互,受到并将生成的HTML页面通过CGI返回客户端。

  (感觉就是“电话通讯”的原理,这边发生数据到服务器,而服务器作为“中介传话筒”,或者说是单纯的“人机对话”?总之,在打通“连接”后,剩下的依旧是类似本地的数据操作了。)

  由此可见,CGI在Web服务器和应用之间充当了交互作用,这样才能够处理用户表单,生成并返回最终的动态HTML页。

  四、搭建CGI服务器

  要像使用Python语言进行CGI开发,首先需要安装一个Web服务器,并将其配置成可以处理Python CGI请求,然后让Web服务器访问CGI脚本。

  当然,其中有些操作也许需要获得系统管理员的帮助。

  下面介绍在Windows系统中搭建CGI服务器的过程。

  在IDLE编辑器中,输入如下命令可以获取Python自带的服务器的地址。

  from http.server import CGIHTTPRequestHandler,test;test(CGIHTTPRequestHandler)

  在CMD控制台界面中,通过输入Python命令也可以获取Python自带服务器的地址。

  

  例如:

  python python的安装根路径\Python39_64\Lib\http\server.py

  其实找到该文件,双击运行也可以。

  不过还是建议安装一个真正的Web服务器,如Apache、ligHTTPD或thttpd。

  其中在Apache中有许多插件或模块可以处理PythonCGI,使用Apache服务器访问CGI的流程如下:

  1)自行安装好Apache(httpd)环境,确保Apache在系统中已经能成功运行并可以访问。

  网站:

  (下载的是本地压缩包,解压后选择一个地方存放。我这里为D:\Apache24)

  2)打开D:\Apache24\conf里面的httpd.conf文件。(以txt格式打开)

  使用Ctrl+F查找下面的内容。

  (1)找到

  Define SRVROOT "C:/Apache24"

  修改为:(这是Apache24文件位置)

  Define SRVROOT "D:/Apache24"

  (2)找到

  ScriptAlias /cgi-bin/ “${SRVROOT}/cgi-bin/”

  修改为:(这里应该是要调用的py文件根目录)

  ScriptAlias /cgi-bin/ "D:/c/cgi-bin"

  (3)找到

  Listen 80

  修改为:(这里是端口号,自定义)

  Listen 8080

  (4)找到

  

   AllowOverride None Options None Require all granted

  改成如下:(这是.py文件路径地址)

   AllowOverride None Options Indexes FollowSymLinks ExecCGI Require all granted Require host ip

  (5)找到下面的内容。

  添加.py 后缀:在 AddHandler 中添加 .py 后缀,这样就可以访问 .py 结尾的 python 脚本文件

  #AddHandler cgi-script .cgi

  去掉此行的“#”注释(如果有),在后面可以追加后缀“.py”,这是可选的。如果不加,也可以使用“.cgi”后缀。

  修改成:

  AddHandler cgi-script .cgi .pl .py

  (6)开启cgi_module modules/mod_cgi.so模块(即去掉模块前的注释#):

  LoadModule cgi_module modules/mod_cgi.so

  (7)在D:\Apache24\bin目录下,使用“httpd -k install”安装Apache主服务,然后输入“httpd –k start”开启Apache服务(管理员身份运行DOS)

  (因为我已经安装过了。)

  (8)双击ApacheMonitor.exe文件。

  (9)屏幕左下角会弹出图标,点击“start”进行启动。

  (10)输入localhost:8080后。

  (11)然而输入其具体文件却无法显示。

  翻译结果:

  被禁止的

  您没有访问此资源的权限。

  (可惜没找到解决办法。)

  具体请参考:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线