我正在运行python -m httpserver在macintosh os x。
这是实现httpserver的Python 2.7代码:
import CGIHTTPServer
import BaseHTTPServer
class Handler(CGIHTTPServer.CGIHTTPRequestHandler):
cgi_directories = ["/cgi"]
PORT = 9999
httpd = BaseHTTPServer.HTTPServer(("", PORT), Handler)
print "serving at port", PORT
httpd.serve_forever()
当我在Web浏览器http://localhost:9999/adder.html上输入时,我希望找出控制Python 2.7 Httpserver模块的行为的httpd.conf配置文件的位置。
还有一个Apache24 HTTPD守护程序同时运行。我猜他们都在不同位置使用不同的httpd.conf文件。与Apache24 HTTPD守护程序相对应的httpd.conf文件在root read readpermission中冻结了我无法更改的root readpermission,以便我使Python 2.7 CGI脚本可通过CGI模块的Auspices执行,如下所示,如下所示Python脚本不会在Apache2上通过CGI运行,因为Lesley University的信息技术专家阻止了像我这样的用户作为Sudo运行操作系统命令。
没有CGI_MODULE,即使是CHMOD X的代码也不可执行,因此请输入此行:
loadModule cgi_module libexec/apache2/mod_cgi.so
并将您的目录更改为这样(我的工作原理(:
Bloweroverride无 从所有人那里允许 需要所有授予 选项execcgi Addhandler CGI-Script .py
没有对负责任的httpd.conf文件进行更改,我将获得以下内容荒谬的消息:
打开adder.cgi,您选择打开adder.gui,这是httpd://localhost.9999的二进制文件(5.0kb(。您想保存此文件吗?取消或保存
而不是看到adder.cgi启动儿童过程。
我假设Python 2.7 HTTPSERVER模块可以在子目录中相对于当前工作目录引用非默认的httpd.conf。
如果您需要我的更多数据,请告诉我。感谢您查看这个问题。
阅读了serverfault文章https://serverfault.com/questions/168132/setting-up-cgihttpserver-on-osx标题为"设置cgihttpserver on OS on On on osx"当我浏览到http://127.0.0.1.1:8000/www/test.py. 时
显然,cgihttpserver.py类未从apache Web服务器配置文件httpd.conf读取。相反