使用flask定义URL根目录

时间:2016-01-18 07:27:07

标签: python flask flask-restful

我有多条路由具有相同的URL根目录。 例如:

  • ABC / DEF /上传
  • ABC / DEF /列表
  • ABC / DEF /页/ {PAGE_ID}

我可以将 abc / def 定义为URL根目录。 (类似于使用Spring或Apache CXF在Java中可以完成的事情)

由于

3 个答案:

答案 0 :(得分:3)

您可以使用APPLICATION_ROOT键进行应用配置。

app.config['APPLICATION_ROOT'] = "/abc/def"

来源 - Add a prefix to all Flask routes

答案 1 :(得分:0)

flask-restful 中,您可以在api initialization上为所有路线添加前缀:

>>> app = Flask(__name__)
>>> api = restful.Api(app, prefix='/abc/def')

然后,您可以忽略任何前缀来连接资源:

>>> api.add_resource(MyResource, '/upload')
>>> ...

答案 2 :(得分:0)

我需要类似的所谓“context-root”。我使用WSGIScriptAlias在/etc/httpd/conf.d/下的conf文件中完成了它:

myapp.conf

<VirtualHost *:80>
    WSGIScriptAlias /myapp /home/<myid>/myapp/wsgi.py

    <Directory /home/<myid>/myapp>
        Order deny,allow
        Allow from all
    </Directory>

</VirtualHost>

现在我可以访问我的应用:http://localhost:5000/myapp

请参阅指南 - http://modwsgi.readthedocs.io/en/develop/user-guides/quick-configuration-guide.html