Python+Apache+CGI

本文详细介绍了如何在Apache服务器上配置CGI环境,包括加载cgi模块、设置cgi脚本路径、分配执行权限及解释Python脚本。通过具体步骤和实例,帮助读者完成CGI配置并测试Python脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境安装好(包括Python、Apache以及相关的组件),从CGI配置开始。

1.配置CGI环境

Apache支持CGI配置,下面就来详细说明配置的过程。

找到安装Apache的目录 /usr/local/apache2/conf ,并对 httpd.conf 配置文件进行修改,如下面的说明:

1.1.加载cgi模块

#LoadModule cgid_module modules/mod_cgid.so

去掉注释:

LoadModule cgid_module modules/mod_cgid.so

1.2.设置cgi脚本文件路径

ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"

apache默认把"/usr/local/apache2/cgi-bin/“映射为/cgi-bin/,即当访问/cgi-bin/目录时,实际上访问的是”/usr/local/apache2/cgi-bin/"目录。

现将其设置为真实的项目目录,例如:

ScriptAlias /cgi-bin/ /home/Source_Code/cgi_for_py/

路径末尾一定要加/ ,否则apache是无法打到该路径下的文件的。

1.3.设置cgi路径的访问权限

<Directory />
    AllowOverride none
    Require all denied
</Directory>

将上面的内容全部修改为下面的内容:

<Directory "/home/Source_Code/cgi_for_py/">
   AllowOverride None
   Options +ExecCGI
   Order allow,deny
   Allow from all
</Directory>

/home/Source_Code/cgi_for_py/ 是项目路径

1.4.设置apache可解释python的cgi脚本文件

#AddHandler cgi-script .cgi

修改为:

AddHandler cgi-script .cgi .py

加上.py后,就可以解释python的脚本文件了,如果你需要解释shell的脚本文件,可以添加.pl,其它的类似。

End,完成上面的4步,CGI配置已完成。
重启Apache或者重新加载Apache

2.测试CGI脚本文件

2.1.创建cgi脚本文件

在/home/Source_Code/cgi_for_py/目录下添加下面一个文件,如index.py:

#!/usr/bin/python
#coding:utf-8
print "Content-type:text/html"
print
print '<html>'
print '<head>'
print '<title>Hello</title>'
print '</head>'
print '<body>'
print '<h2>Hello Word! This is my first CGI program</h2>'
print '</body>'
print '</html>'

注意:
打印协议头。
协议头为print的第一行和第二行。第一行为协议类型,第二行为协议结尾。
『print “字符串”』等价于『print(“字符串”)』
『print』等价于『print("")』

2.2.为cgi脚本分配执行权限

常见的没有权限的错误如下:

  • End of script output before headers:index.py
  • 500
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大鲸鱼吃小鲸鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值