让python脚本在http简单服务器中运行

时间:2017-06-04 12:24:12

标签: python linux server

我有一个简单的python脚本,我想作为一个网站:

import SimpleHTTPServer
import SocketServer

PORT = 8000

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler

httpd = SocketServer.TCPServer(("", PORT), Handler)

print "serving at port", PORT
httpd.serve_forever()

我在该文件夹中并运行

$ python3 -m http.server 
然后我去拜访了 http://hassbian.local:8000/song.py

终端说这个,我把文件作为txt文件,脚本不会执行。

Serving HTTP on 0.0.0.0 port 8000 ...
192.168.1.115 - - [04/Jun/2017 14:19:59] "GET / HTTP/1.1" 200 -
192.168.1.115 - - [04/Jun/2017 14:20:04] "GET /song.py HTTP/1.1" 200 -

在rasberry pi上运行

1 个答案:

答案 0 :(得分:1)

SimpleHTTPServer不做CGI。如果你想要CGI,你将不得不使用CGIHTTPServer

  

该模块可以在Unix和Windows系统上运行CGI脚本。

我不确定这是否是你真正想要的,但是以你展示的方式调用python脚本是CGI。 CGI是一种非常古老的做事方式。使用python运行简单的Web应用程序现在几乎完全是webapp2或flask的域。虽然涉及数据库的更复杂的应用程序由django主导。