python配置cgi_Python新路程(9)CGI编程 CGI配置方法

本文介绍了如何在Apache服务器上配置CGI以运行Python程序。首先,启用mod_cgi模块,然后添加处理CGI文件的类型。接着,指定CGI工作目录,并调整Directory配置以允许执行CGI。创建一个简单的pyCGI.py文件并赋予执行权限,最后重启Apache服务器,通过访问http://localhost/pyCGI.py来测试配置是否成功。

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

刚看接受Python,对于他的配置什么的都不懂

今天写了个Python文件想跟php一样的执行以下,就看了下

Apache对CGI是支持的,想到Apache的时候,同时也想到了配置文件--httpd.conf

文件的目录在:

/etc/apache2/httpd.conf

找个合适的工具打开修改,vim也好文本编辑也好

(我喜欢用Sublime,因为颜色黑乎乎的 似乎高大上一样)

1、搜索:mod_cgi.so会找到下面这句,没有修改过的话,他是前面加#,被注释掉的,我们去掉注释

LoadModule cgi_module libexec/apache2/mod_cgi.so

2、搜索:AddHandler  会找打下面这句话,如果是注释掉的话,同样我们去掉注释,后面的.pl .py .sh是自己追加的

AddHandler cgi-script .cgi .pl .py .sh

3、修改CGI的工作目录(改到自己合适的位置)

我的内容跟网上说的一些有些不大一样,通过ScriptAlias搜索

我的原来的是这样的

#ScriptAliasMatch ^/cgi-bin/((?!(?i:webobjects)).*$) "/Library/WebServer/CGI-Executables/$1"

我就直接把他注释掉了,然后改成了下面这样

ScriptAlias /Documents/ /Library/WebServer/Documents/

因为我的Apache的工作目录就是在这个下面。

4、还有一个关于CGI的一个Directory

CGI-Executables">

AllowOverride None

Options None

Require all granted

如果只是把上面的路径改成Documents的路径,执行还是不行

正确的是下面这个

AllowOverride None

Options +ExecCGI

Order allow,deny

Allow from all

5、我们写个简单py文件放在Documents下面,名字存储为pyCGI.py

#!/usr/bin/python

# -*- coding: UTF-8 -*-

print "Content-type:text/html"

print # 空行,告诉服务器结束头部

print ''

print '

'

print ''

print '

Hello Word - 我的第一个 CGI 程序!'

print ''

print '

'

print '

Hello Word! 我是来自菜鸟教程的第一CGI程序

'

print ''

print ''

6、重启Apache

sudo /usr/sbin/apachectl restart

7、文件保存后修改 pyCGI.py,修改文件权限为 755:

chmod 755 pyCGI.py

7、执行

http://localhost/pyCGI.py

这样就执行成功了

0818b9ca8b590ca3270a3433284dd417.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值