【发布时间】:2020-01-22 00:30:01
【问题描述】:
我正在尝试将 Apache 用作我的 Flask 应用程序的代理服务器。但是我遇到了以下错误...因为我是新手,所以我不知道从哪里开始寻找。
我没有使用任何虚拟环境。它是一个 Python3 Flask 应用程序。
Apache 日志
[Tue Jan 21 16:16:19.249067 2020] [wsgi:error] [pid 6515:tid 3041002528] [remote 10.0.0.12:50757] mod_wsgi (pid=6515): Failed to exec Python script file '/home/pi/RaspBerryPiAdhan/www/sysinfo.wsgi'.
[Tue Jan 21 16:16:19.249609 2020] [wsgi:error] [pid 6515:tid 3041002528] [remote 10.0.0.12:50757] mod_wsgi (pid=6515): Exception occurred processing WSGI script '/home/pi/RaspBerryPiAdhan/www/sysinfo.wsgi'.
[Tue Jan 21 16:16:19.250245 2020] [wsgi:error] [pid 6515:tid 3041002528] [remote 10.0.0.12:50757] Traceback (most recent call last):
[Tue Jan 21 16:16:19.250679 2020] [wsgi:error] [pid 6515:tid 3041002528] [remote 10.0.0.12:50757] File "/home/pi/RaspBerryPiAdhan/www/sysinfo.wsgi", line 5, in <module>
[Tue Jan 21 16:16:19.251735 2020] [wsgi:error] [pid 6515:tid 3041002528] [remote 10.0.0.12:50757] from test import app as application
[Tue Jan 21 16:16:19.252221 2020] [wsgi:error] [pid 6515:tid 3041002528] [remote 10.0.0.12:50757] ImportError: cannot import name app
test.py 在 WWW 文件夹中,sysinfo.wsgi 也是
wsgi 文件
import sys
sys.path.append('/home/pi/RaspBerryPiAdhan/www')
from test import app as application
配置文件
WSGIDaemonProcess sysinfo user=pi group=www-data threads=5
WSGIScriptAlias /sysinfo /home/pi/RaspBerryPiAdhan/www/sysinfo.wsgi
<Directory "/home/pi/RaspBerryPiAdhan/www">
WSGIProcessGroup sysinfo
WSGIScriptReloading On
WSGIApplicationGroup %{GLOBAL}
Require all granted
</Directory>
ErrorLog /home/pi/RaspBerryPiAdhan/www/logs/error.log
test.py
from flask import Flask
from views.address import address_blueprint
app = Flask(__name__)
@app.route('/')
def hello():
return "Hello World! 2"
if __name__ == '__main__':
app.run()
【问题讨论】:
-
您将 /home/pi/RaspBerryPiAdhan/www 添加到模块查找路径,我假设您希望将模块加载到那里,您是否将 test.py 放在该文件夹中?
-
Test.py 在 www 文件夹中。
标签: python regex flask mod-wsgi