权限错误权限在简单的基本Flask应用程序中被拒绝

时间:2019-04-06 14:17:31

标签: linux python-3.x flask vagrant

我正在基于无业游民的Linux系统上运行此脚本,这是运行flask应用程序的简单基本代码,出现此错误:

  

提高child_exception_type(errno_num,err_msg)
  PermissionError:[Errno 13]权限被拒绝

这是脚本:

y[6] - y[1]

我得到的错误:

#!/usr/bin python3

from flask import Flask
app = Flask(__name__)

@app.route('/')
@app.route('/hello')
def helloworld():
    return 'Hello and Welcome to flask'

if __name__ == '__main__':
    app.debug = True
    app.run(host='0.0.0.0', port=5000)

2 个答案:

答案 0 :(得分:0)

也许是权限错误,因为Vagrant试图运行您的flask应用程序并且没有必要的可执行权限?

之所以这么说是因为您的堆栈跟踪的这一部分:

  

PermissionError:[Errno 13]权限被拒绝

并且似乎在以下代码行上失败:app.run(host='0.0.0.0', port=5000)

也许您可以在包含flask项目的目录上授予可执行权限,看看是否有助于解决您的问题:

chmod -R 755 /path/to/directory

希望有帮助!

答案 1 :(得分:0)

由于您正在使用Vagrant构建的VM中进行游戏,因此您必须完成类似的操作

vagrant@vagrant:/vagrant$ sudo pip3 install flask

第一。可能您安装了其他一些软件包。根据您使用的基本操作系统,使用pip(或pip3)在系统级别(甚至在VM中)安装也会导致问题。

在我的基本安装遇到了几次麻烦之后,我现在总是在VM内使用virtualenv,以便所有软件包安装都是本地的。

我敢打赌

vagrant@vagrant:/vagrant$ sudo apt-get install -y python-virtualenv
vagrant@vagrant:/vagrant$ virtualenv --python=python3 venv
vagrant@vagrant:/vagrant$ venv/bin/pip install flask
vagrant@vagrant:/vagrant$ ven/bin/python project.py

会给您更好的结果。