为什么我的 Flask 应用卡在导入步骤?
Why is my Flask app stuck at import step?
我一直在尝试为 运行 开发一个简单的 flask 应用程序,但无法解决以下问题。
让我们从我的文件夹结构开始:
D:\Git\tools\scripts\simUserInterface 有两个 python 文件:
app.py
templates.py
此外,还有文件夹
D:\Git\tools\scripts\simUserInterface\index
与文件
web.wsgi
我的web.wsgi看起来像这样:
import sys
sys.path.insert(0, 'D:/Git/tools/scripts/simUserInterface')
from dashy import server as application
app.py本身是这样的
import os
import sys
from flask import Flask
import dash
import dash_table
import dash_html_components as html
import dash_core_components as dcc
from templates import MY_TEMPLATE
server = Flask(__name__)
app = dash.Dash(__name__, server=server)
# Create app layout
app.layout = html.Div()
if __name__ == "__main__":
server.run()
我使用的是 Apache 2.4,我的虚拟主机配置如下所示:
<VirtualHost *:5000>
ServerAdmin admin-name-here
ServerName localhost:5000
WSGIScriptAlias / "D:/Git/tools/scripts/simUserInterface/index/web.wsgi"
DocumentRoot "D:/Git/tools/scripts/simUserInterface"
<Directory "D:/Git/tools/scripts/simUserInterface/index">
Require all granted
</Directory>
ErrorLog "D:/Git/tools/scripts/simUserInterface/logs/error.log"
CustomLog "D:/Git/tools/scripts/simUserInterface/logs/access.log" common
</VirtualHost>
如果我 运行 在我的机器上使用内置 Flask 开发服务器的应用程序,一切正常,布局按预期呈现(当然,我的布局实际上不是空的。我删除了专注于主要事情的代码)。
但是,如果我通过浏览器 (127.0.0.1:5000) 运行 脚本,它似乎停留在 from templates import MY_TEMPLATE。浏览器似乎正在加载某些内容,但未呈现布局。
如果我注释掉某一行 (from templates import MY_TEMPLATE),一切正常。
我完全没有想法,非常感谢任何帮助。
感谢quq的回答,我的app现在终于运行了。
问题总结:
- 在 Apache 服务器
中 运行 时,Flask 应用程序无法导入 pandas
解决方案:
我必须在我的 httpd.conf 末尾添加以下行,它位于 Apache 安装的根目录中(对于 Windows)
WSGIApplicationGroup %{GLOBAL}
我一直在尝试为 运行 开发一个简单的 flask 应用程序,但无法解决以下问题。
让我们从我的文件夹结构开始:
D:\Git\tools\scripts\simUserInterface 有两个 python 文件:
app.py
templates.py
此外,还有文件夹
D:\Git\tools\scripts\simUserInterface\index
与文件 web.wsgi
我的web.wsgi看起来像这样:
import sys
sys.path.insert(0, 'D:/Git/tools/scripts/simUserInterface')
from dashy import server as application
app.py本身是这样的
import os
import sys
from flask import Flask
import dash
import dash_table
import dash_html_components as html
import dash_core_components as dcc
from templates import MY_TEMPLATE
server = Flask(__name__)
app = dash.Dash(__name__, server=server)
# Create app layout
app.layout = html.Div()
if __name__ == "__main__":
server.run()
我使用的是 Apache 2.4,我的虚拟主机配置如下所示:
<VirtualHost *:5000>
ServerAdmin admin-name-here
ServerName localhost:5000
WSGIScriptAlias / "D:/Git/tools/scripts/simUserInterface/index/web.wsgi"
DocumentRoot "D:/Git/tools/scripts/simUserInterface"
<Directory "D:/Git/tools/scripts/simUserInterface/index">
Require all granted
</Directory>
ErrorLog "D:/Git/tools/scripts/simUserInterface/logs/error.log"
CustomLog "D:/Git/tools/scripts/simUserInterface/logs/access.log" common
</VirtualHost>
如果我 运行 在我的机器上使用内置 Flask 开发服务器的应用程序,一切正常,布局按预期呈现(当然,我的布局实际上不是空的。我删除了专注于主要事情的代码)。 但是,如果我通过浏览器 (127.0.0.1:5000) 运行 脚本,它似乎停留在 from templates import MY_TEMPLATE。浏览器似乎正在加载某些内容,但未呈现布局。
如果我注释掉某一行 (from templates import MY_TEMPLATE),一切正常。
我完全没有想法,非常感谢任何帮助。
感谢quq的回答,我的app现在终于运行了。 问题总结: - 在 Apache 服务器
中 运行 时,Flask 应用程序无法导入 pandas解决方案:
我必须在我的 httpd.conf 末尾添加以下行,它位于 Apache 安装的根目录中(对于 Windows)
WSGIApplicationGroup %{GLOBAL}