Apache Web服务器在尝试在其上部署Flask时提供404

时间:2017-03-13 19:22:05

标签: python apache flask windows-server-2012-r2

我尝试在Windows Server 2012上部署我的烧瓶应用程序。我按照此处的说明进行操作:https://claudiosparpaglione.wordpress.com/2013/03/06/how-to-deploy-flask-applications-to-apache-webserver/

现在,这是我的apache配置文件(相关位):

Listen 5060
LoadModule wsgi_module modules/mod_wsgi.so
<Directory C:/FlaskOnApache>
    Require all granted
</Directory>
WSGIScriptAlias /api C:/FlaskOnApache/flasky.wsgi

当我去:

http://localhost:5060/

我得到了#34;它有效!&#34;页。

但是当我去http://localhost:5060/api/hello?name=claudio时,我得到了404。

我做错了什么?

Error.log给了我这个:

  

目标WSGI脚本未找到或无法统计:   C:/FlaskOnApache/flasky.wsgi

但它肯定存在于那里,并且是上面链接中提到的内容的副本。

编辑:

我的flasky.py文件:

from flask import Flask, request
app = Flask(__name__)

@app.route('/hello')
def hello_world():
    name = request.args.get('name','')
    return 'Hello ' + name + '!'
if __name__ == '__main__':
    app.run()

我的flasky.wsgi.py文件:

import sys

#Expand Python classes path with your app's path
sys.path.insert(0, "C:/FlaskOnApache")

from flasky import app

#Put logging code (and imports) here ...

#Initialize WSGI app object
application = app

2 个答案:

答案 0 :(得分:0)

在您的Flask app.py中

,您需要修改以下路线:@app.route('/') 到:

`@app.route('/hello')

答案 1 :(得分:0)

愚蠢的错误。搞定了。文件名应该是&#34; flasky.wsgi&#34;不是&#34; flasky.wsgi.py&#34;。谢谢你们!