显示浏览器的代码,而不是运行.py文件(.py file showing code in brows

2019-07-28 22:27发布

我想开始使用Python的,但不能正确地得到我的服务器安装了本地主机(使用Ampps)。 Python是贯穿IDLE和命令行就好了,但是,当我打开中显示的代码,而不是运行在浏览文件。

我跟着这个http://www.imladris.com/Scripts/PythonForWindows.html为使CGI设置教程,但它不工作。

下面是我的“Hello World”程序的代码,如果有什么差别。

#!/usr/bin/env python
# -*#!/usr/bin/python

print "Content-type:text/html\r\n\r\n"
print '<html>'
print '<head>'
print '<title>Hello Word - First CGI Program</title>'
print '</head>'
print '<body>'
print '<h2>Hello Word! This is my first CGI program</h2>'
print '</body>'
print '</html>'

有什么建议?

Answer 1:

您的Web服务器处理Python代码作为静态文件,而不是一个可执行文件。 这里的目标是要Apache来执行Python和发送的标准输出返回给用户的浏览器。

我不熟悉Ampps,但基本的Apache流得到这个设置是这样的。

  1. 编辑您的选项的httpd.conf的线,其中包括ExecCGI
  2. 通过添加以下行注册的httpd.conf为CGI处理器的Python文件:
    AddHandler .py
  3. 重启Apache
  4. 确保您的家当行(#!在上面的/ usr /斌/包膜蟒蛇位)的路径你的Python可执行实际指向。 对于python2.6的生活在C:这可能是:
    #!\Python26\python
  5. 如果你的脚本必须是便携式的,而不是修改家当行添加行ScriptInterpreterSource registry到你的httpd.conf,并确保Windows默认打开* .py文件与Python.exe。 这可以通过双击一个脚本进行测试。 如果不执行,请右键单击它,选择开用,那么其他,然后浏览到您的python.exe。 确保选中“始终使用该程序打开这种类型的文件”复选框。 有一个关于这个Microsoft知识库文章在这里 。

最后,mod_wsgi的或FastCGI的是获得Apache来执行Python中,与先前持有偏好降低流量的网站(数千每天请求的10片)的首选方法。 我也想建议你到网页框架,如web.py(非常轻巧)或Django的(重量较重,但可以节省你,如果你正在收集用户输入或与数据库交互的时间吨)。

  • mod_wsgi的设置说明。
  • FastCGI的文档 (得到它安装程序在Windows可以是一个痛苦)
  • Django的入门
  • web.py教程


文章来源: .py file showing code in browser instead of running