Dash应用程序在本地运行,因为它在服务器中引发错误

时间:2019-04-10 06:03:20

标签: python flask hyphen

在服务器中运行时,遇到错误

Traceback (most recent call last):
  File "run.py", line 5, in <module>
    app.run_server(host='0.0.0.0', port=7000, debug = True)
  File "/usr/lib/python2.7/site-packages/dash/dash.py", line 1411, in run_server
    **flask_run_options)
  File "/usr/lib/python2.7/site-packages/flask/app.py", line 943, in run
    run_simple(host, port, self, **options)
  File "/usr/lib/python2.7/site-packages/werkzeug/serving.py", line 988, in run_simple
    run_with_reloader(inner, extra_files, reloader_interval, reloader_type)
  File "/usr/lib/python2.7/site-packages/werkzeug/_reloader.py", line 332, in run_with_reloader
    sys.exit(reloader.restart_with_reloader())
  File "/usr/lib/python2.7/site-packages/werkzeug/_reloader.py", line 176, in restart_with_reloader
    exit_code = subprocess.call(args, env=new_environ, close_fds=False)
  File "/usr/lib64/python2.7/subprocess.py", line 524, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib64/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/lib64/python2.7/subprocess.py", line 1327, in _execute_child
    raise child_exception
OSError: [Errno 8] Exec format error

当我们在本地执行时,它可以正常工作,而在服务器中运行时会抛出错误。
我正在使用python版本2.7,它与服务器中的相同。 请提供一些解决方案

1 个答案:

答案 0 :(得分:1)

我相信这可能是由于您没有在python模块的开头添加 shebang 并且不要忘记更改文件mod以允许执行。

shebang的示例:

#!/usr/bin/env python3

更改文件mod的示例:

chmod +x /yourfile.py

如果您不是以root用户身份运行,则可能由于没有权限而被告知,您可以使用sudo !!(双桶)在sudo中重新运行上一个命令,或者运行sudo chmod +x /yourfile.py