无法使用WSGI导入pyplot

问题描述

我正在使用带matplotlib的python 3.7。我对pyplot import有问题... 我正在用Apache + wsgi开发Debian 10。 当我尝试使用CLI python3 __init__.py执行python脚本时,它可以工作。 但是,当我尝试使用Apache + Wsgi时,导入pyplot时,我的脚本会停止在行中运行。

这是我的apache conf文件

WsgiPythonPath /home/user/project/src
WsgiRestrictStdout Off
<VirtualHost *:80>
        ServerName project.local
        ServerAdmin [email protected]
        WsgiScriptAlias / /home/user/project/project.wsgi
        WsgiDaemonProcess project request-timeout=60 processes=2 threads=25
        WsgiScriptReloading On
        <Directory /home/user/project>
            <Files "project.wsgi">
                Require all granted
            </Files>
        </Directory>
        <Directory /home/user/project/src>
            Require all granted
        </Directory>
        Alias /static /home/user/project/src/static
        <Directory /home/user/project/src/static>
                        Require all granted
                </Directory>
        Alias /matrix /home/user/project/src/matrix
        <Directory /home/user/project/src/matrix>
                        Require all granted
                </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log
        LogLevel info
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

这是我的Wsgi文件

#!/usr/bin/python
import sys
sys.stdout = sys.stderr
sys.path.insert(0,"/home/user/project")
 
from src import app as application
application.secret_key = 'secret'

这是我的__init.py文件的开头

print('Begin')
import cartopy.crs as ccrs
import cartopy.feature as cfeature
from flask import Flask,make_response,render_template,request
from matplotlib.backends.backend_agg import figureCanvasAgg as figureCanvas
from shapely.geometry import Linestring
import numpy as np
print('Matplotlib')
import matplotlib
import matplotlib.pyplot as plt
print('plt')
....

我的脚本打印:

Begin

Matplotlib

因此,pyplot阻止了我的脚本,经过几天的调试,我找不到任何解决方案...如何解决此问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)