冰冻的Flask不起作用,而Flask是

2024-06-08 23:29:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个使用烧瓶的网站。主程序很长,所以我使用a paste向您展示代码。当我用./site serve --debug运行它时,它工作得很好,但是我不能用烧瓶冷冻它。我有个错误:

$ ./site build                       
Building website...
./site:240: MimetypeMismatchWarning: Filename extension of u'sitemap.xml' (type application/xml) does not match Content-Type: text/html; charset=utf-8
  freezer.freeze()
Traceback (most recent call last):
  File "./site", line 346, in <module>
    parser.dispatch()
  File "/home/guillaume/nicolas.perriault.net/env/lib/python2.7/site-packages/argh/helpers.py", line 53, in dispatch
    return dispatch(self, *args, **kwargs)
  File "/home/guillaume/nicolas.perriault.net/env/lib/python2.7/site-packages/argh/dispatching.py", line 123, in dispatch
    for line in lines:
  File "/home/guillaume/nicolas.perriault.net/env/lib/python2.7/site-packages/argh/dispatching.py", line 199, in _execute_command
    for line in result:
  File "/home/guillaume/nicolas.perriault.net/env/lib/python2.7/site-packages/argh/dispatching.py", line 182, in _call
    result = args.function(*positional, **keywords)
  File "./site", line 240, in build
    freezer.freeze()
  File "/home/guillaume/nicolas.perriault.net/env/lib/python2.7/site-packages/flask_frozen/__init__.py", line 140, in freeze
    new_filename = self._build_one(url)
  File "/home/guillaume/nicolas.perriault.net/env/lib/python2.7/site-packages/flask_frozen/__init__.py", line 250, in _build_one
    % (response.status, url))
ValueError: Unexpected status '500 INTERNAL SERVER ERROR' on URL /403.html

如果我删除中关于403.html的部分站点.py,我有同样的错误404,然后500,然后联系人.html,然后/。我找不到原因。有人有主意吗?在


Tags: inpybuildenvhomenetlibpackages
1条回答
网友
1楼 · 发布于 2024-06-08 23:29:23

冻结应用程序时启用测试。它应该产生更多关于错误的信息。在

@command
def build():
    """ Builds this site.
    """
    print("Building website...")
    app.debug = False
    app.testing = True
    asset_manager.config['ASSETS_DEBUG'] = False
    freezer.freeze()
    local("cp ./static/*.ico ./build/")
    local("cp ./static/*.txt ./build/")
    local("cp ./static/*.xml ./build/")
    print("Done.")

冷冻瓶用app.test_client()看它是docs。在

相关问题 更多 >