【发布时间】:2011-07-15 19:16:41
【问题描述】:
我有一个使用 python CGIHTTPServer 类运行的非常简单的 CGI 网络服务器。 这个类产生并执行一个 cgi-php 脚本。 如果网页发送POST请求,如何访问php脚本中的POST请求数据?
【问题讨论】:
标签: php python cgi webserver cgihttprequesthandler
我有一个使用 python CGIHTTPServer 类运行的非常简单的 CGI 网络服务器。 这个类产生并执行一个 cgi-php 脚本。 如果网页发送POST请求,如何访问php脚本中的POST请求数据?
【问题讨论】:
标签: php python cgi webserver cgihttprequesthandler
当您说您的 Python 进程“生成并执行”一个 cgi-php 脚本时,我相信您的意思是“它通过执行 PHP CLI 可执行文件来调用我的 PHP 脚本,并将我的脚本名称传递给它。”
使用 PHP CLI 可执行文件,HTTP 特定的超全局变量和环境值不会自动设置。您必须在 Python 服务器进程中读取所有 HTTP 请求标头和 GET/POST 数据,然后在 PHP 脚本使用的环境中设置它们。
整个实验听起来很有趣,但 mod_php 已经这样做了。
【讨论】:
BaseHTTPServer 类...它是CGIHTTPServer 的祖先类。这是参考:docs.python.org/library/…