Python中等同于IIS和ASP的web服务器是什么?
对于一些非常简单的内部网页应用,我只需要把IIS打开,然后在www目录下写一些ASP脚本,这些脚本就能立刻开始工作。
有没有类似的服务器应用可以用来运行Python脚本,让它自动在某个文件夹里提供动态页面(也就是Python脚本),而几乎不需要配置呢?
我找到的解决方案要么功能太有限(比如SimpleHTTPRequestHandler不能提供动态内容),要么需要配置提供服务的脚本。
4 个回答
0
WSGI的设置其实挺简单的,容易上手,但并不是完全现成的。如果你打算使用一个更全面的框架,Django的MVC结构里有一个简单的内置开发服务器,可以直接用来开发。
1
如果你想开发或者只是想玩玩,这里有个例子,使用的是标准的Python库。我之前帮朋友搭建了一个基本的CGI服务器,就是用这个方法。这个服务器可以从cgi-bin文件夹提供Python脚本,也可以从根文件夹提供文件。不过我现在没法在Windows电脑上确认这个方法是否还有效。此外,这个例子是基于Python 2.x的,Python 3.x也有类似的功能,只是名字不一样。
- 在你的硬盘上创建一个文件夹,里面有一个cgi-bin的子文件夹(比如说 "C:\server\cgi-bin")
- 打开命令窗口,切换到 "C:\server" 这个目录
- 输入以下命令,假设你已经在C:\Python27安装了Python 2.7: "c:\python27\python.exe -m CGIHTTPServer" 你应该会看到一条消息,类似于 "Serving HTTP on 0.0.0.0 port 8000"
在Linux上也是一样的,只需要在有cgi-bin/的目录下输入 "python -m CGIHTTPServer"。
4
总是可以使用CGI。你可以把.py
文件映射到"C:\Python27\python.exe" -u "%s"
,然后把.py文件放到一个文件夹里,IIS就会执行它们。
不过我一般不推荐这样做用于正式工作——从长远来看,你肯定会想要把应用程序写成WSGI格式,然后通过各种接口来部署,包括CGI——但这对于快速原型开发来说还是挺方便的。