繁体   English   中英

wfastcgi导入cx_Oracle失败,但是python -c“ import cx_Oracle”成功

[英]wfastcgi fails import cx_Oracle, but `python -c “import cx_Oracle” succeeds

我使用fastCGI安装IIS,并提供了烧瓶应用程序。 到现在为止还挺好。 接下来,我希望添加一些数据库连接,因此将行import cx_Oracle添加到我的应用程序。 现在抛出此错误:

Error occurred while reading WSGI handler: 
Traceback (most recent call last): 
File "D:\Anaconda2\lib\site-packages\wfastcgi.py", line 791, in main 
    env, handler = read_wsgi_handler(response.physical_path) 
File "D:\Anaconda2\lib\site-packages\wfastcgi.py", line 633, in read_wsgi_handler 
    handler = get_wsgi_handler(os.getenv("WSGI_HANDLER")) 
File "D:\Anaconda2\lib\site-packages\wfastcgi.py", line 616, in get_wsgi_handler 
    raise ValueError('"%s" could not be imported%s' % (handler_name, last_tb)) 
ValueError: "Bloomberg_server.app" could not be imported: 

Traceback (most recent call last): 
File "D:\Anaconda2\lib\site-packages\wfastcgi.py", line 600, in get_wsgi_handler 
    handler = __import__(module_name, fromlist=[name_list[0][0]]) 
File "D:\website\init__.py", line 6, in  import cx_Oracle 
    ImportError: DLL load failed: The specified module could not be found. StdOut: StdErr: 

如标题所示,我无法在受控环境中重现该问题。 相同的import语句在conda环境中也可以正常工作,此外,我可以在依赖数据库连接的页面上运行Flask调试服务器。

我很茫然。 谁知道这是怎么回事? path / oracle_home变量指向即时客户端,并且我仅安装了一个python环境。

我很尴尬,无法承认这花了我多长时间,但我找到了答案。 FastCGI的核心业务是使子进程保持活动状态,以便对服务器的后续调用无需启动Python环境。 换句话说,安装python软件包后,建议重新启动。 我通过重新启动解决了关于SO的第一个问题。

这个问题的答案使我思考正确的方向。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM