我正在尝试在运行 Ubuntu 20 和 LAMP 的 VPS 上部署一个简单的 Flask 应用程序
flask run
当我从应用程序文件夹内部执行该应用程序时,该应用程序运行良好
但是服务器日志有错误:
[Sun Oct 24 14:55:03.464311 2021] [wsgi:error] [pid 5655] [client 90.198.214.109:59097] from FlaskApp import app as application
[Sun Oct 24 14:55:03.464323 2021] [wsgi:error] [pid 5655] [client 90.198.214.109:59097] File "/var/www/FlaskApp/FlaskApp/__init__.py", line 1, in <module>
[Sun Oct 24 14:55:03.464363 2021] [wsgi:error] [pid 5655] [client 90.198.214.109:59097] from flask import Flask
[Sun Oct 24 14:55:03.464386 2021] [wsgi:error] [pid 5655] [client 90.198.214.109:59097] ImportError: No module named flask
代码和说明取自这里:https://www.digitalocean.com/community/tutorials/how-to-deploy-a-flask-application-on-an-ubuntu-vps
当访问服务器IP时,出现错误信息:
Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.
编辑:
当我使用命令运行代码时,sudo python __init__.py
它给出了错误,cannot import flask from Flask
而使用该命令sudo python3 __init__.py
工作正常。似乎调用 wsgi 文件的任何脚本都在使用python
调用样式进行调用,从而触发无法启动脚本的错误
答案1
回答:
事实证明问题出在 wsgi.py 和它调用的 python 目录中(必须是 /python3,而不是 /python)
通过将 wsgi 文件中的顶行更改为以下内容来修复
#!/usr/bin/python3.8 来自教程 #!/usr/bin/python