我想在共享主机环境中运行Python CGI。我跟着瓶的例子,用一个小应用程序,下面传来:Flask中的路径路由
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
@app.route("/pi")
def pi():
return "3.1416"
if __name__ == "__main__":
app.run()
我.htaccess
包含:
Options +ExecCGI
AddHandler cgi-script .cgi .py .rb
DirectoryIndex index.cgi index.htm
而且我index.cgi
是
#!/usr/bin/env python
from wsgiref.handlers import CGIHandler
from firstflask import app
CGIHandler().run(app)
它的路径/
成功映射到index()
,但它无法将路径/pi
映射到pi()
,而是将re发生404错误。我想我错过了一些明显的东西。谢谢您的帮助。
这是Apache吗?我认为添加一个Apache标签可能会给你更多的答案,因为这似乎更像是一个Web服务器配置问题。 – six8 2012-04-03 00:46:45
你的主机只支持CGI,还是支持mod_python或mod_wsgi?这些都是更好的选择。 – six8 2012-04-03 00:53:44
Cixate,你是对的,这是与Apache。我是python web-frameworks的新手。 cgi设置似乎比mod-wsgi设置更快。这就是我选择cgi的原因。另一件事,我怀疑它可能需要url重写。但是因为我没有看到文档中提到的任何url-rewrite,所以我认为没有必要。谢谢 – sdc 2012-04-03 02:37:52