gpt4 book ai didi

python - 在 Windows 上使用 apache mod_wsgi 运行 Flask 应用程序时导入冲突

转载 作者:太空宇宙 更新时间:2023-11-04 02:06:45 25 4
gpt4 key购买 nike

我允许你问你关于在 Windows 上使用你的 mod_wsgi portage 托管 Flask 应用程序时遇到的问题

我有两个 flask 应用程序,由于导入冲突,只有一个可以同时存活

即:如果请求应用程序 1 我有响应然后,如果我请求应用程序 2,我有内部服务器错误,日志中有错误...然后,如果我重新启动 apache 并请求应用程序 2,我会得到响应,但如果我请求应用程序 1,我会遇到相同的内部服务器错误如果我评论一些像 numpy 这样的导入,两个应用程序可以同时存在

如果您对此问题有任何想法或链接或答案,我们将不胜感激?

我的安装如下所述

提前感谢您的巡演时间和您的作品

亚历山大

错误日志
mod_wsgi (pid=4936): 无法执行 Python 脚本文件 'D:/exec/Apache24/htdocs/wsgi/api_test_2.wsgi'。
mod_wsgi (pid=4936): 处理 WSGI 脚本 'D:/exec/Apache24/htdocs/wsgi/api_test_2.wsgi' 时发生异常。
回溯(最近调用最后):
文件“D:/exec/Apache24/htdocs/wsgi/api_test_2.wsgi”,第 3 行,在
从 api_test_2 导入应用程序作为应用程序
文件“D:/exec/wsgi_api/api_test_2\api_test_2.py”,第 2 行,在
导入 numpy
文件“c:\python\python36\lib\site-packages\numpy\__init__.py”,第 142 行,在
从 。导入核心
文件“c:\python\python36\lib\site-packages\numpy\core\__init__.py”,第 16 行,在
从 。导入多数组
文件“c:\python\python36\lib\site-packages\numpy\core\multiarray.py”,第 12 行,在
从 。导入覆盖
文件“c:\python\python36\lib\site-packages\numpy\core\overrides.py”,第 46 行,在
""")
RuntimeError: implement_array_function 方法已经有文档字符串

#---------------------------------
# file : D:/exec/wsgi_api/api_test_1/api_test_1.py
#---------------------------------
from flask import Flask, jsonify,render_template, request, make_response
import numpy
app = Flask(__name__)
@app.route('/')
def home():
resp = make_response("hello from 1", 200)
resp.headers['Content-Type'] = 'charset=utf-8'
return resp
#---------------------------------

#---------------------------------
# file : D:/exec/wsgi_api/api_test_2/api_test_2.py
#---------------------------------
from flask import Flask, jsonify,render_template, request, make_response
import numpy
app = Flask(__name__)
@app.route('/')
def home():
resp = make_response("hello from 2", 200)
resp.headers['Content-Type'] = 'charset=utf-8'
return resp
if __name__ == '__main__':
app.run(host='127.0.0.1', port=36000)
#---------------------------------

我在 appache httpdocs 中有这两个 wsgi 文件

#---------------------------------
# file : D:/exec/Apache24/htdocs/wsgi/api_test_1.wsgi
#---------------------------------
import sys
sys.path.append('D:/exec/wsgi_api/api_test_1/')
from api_test_1 import app as application
#---------------------------------


#---------------------------------
# file : D:/exec/Apache24/htdocs/wsgi/api_test_2.wsgi
#---------------------------------
import sys
sys.path.append('D:/exec/wsgi_api/api_test_1/')
from api_test_1 import app as application
#---------------------------------


#---------------------------------
In D:/exec/Apache24/conf/httpd.conf i add the line
#---------------------------------
WSGIScriptAlias /api_test_1 "D:/exec/Apache24/htdocs/wsgi/api_test_1.wsgi"
WSGIScriptAlias /api_test_2 "D:/exec/Apache24/htdocs/wsgi/api_test_2.wsgi"
#---------------------------------

最佳答案

我在一个项目中遇到了类似的问题。在我的例子中,我必须在我网站的 .conf 文件中添加 WSGIApplicationGroup %{GLOBAL}

这是我找到信息的文档:
https://modwsgi.readthedocs.io/en/develop/user-guides/checking-your-installation.html#sub-interpreter-being-used

关于python - 在 Windows 上使用 apache mod_wsgi 运行 Flask 应用程序时导入冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54537814/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com