gpt4 book ai didi

apache - Apache : Could not find platform independent libraries 上的 mod_wsgi

转载 作者:行者123 更新时间:2023-12-01 06:27:06 24 4
gpt4 key购买 nike

我正在尝试将 Django 与 Apache 一起使用,但是当我尝试启动 WSGI 应用程序时,出现以下错误:

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site

我在 httpd.conf 文件中包含了这个:
WSGIPythonHome /home/ec2-user/anaconda
WSGIScriptAlias / /home/ec2-user/test/wsgi.py
WSGIPythonPath /home/ec2-user/test
<Directory /home/ec2-user/test>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>

这是我的 wsgi.py 文件的内容:
import sys

def application(environ, start_response):
status = '200 OK'
output = 'Hello World!'

response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)

print >> sys.stderr, 'sys.prefix = %s' % repr(sys.prefix)
print >> sys.stderr, 'sys.path = %s' % repr(sys.path)

return [output]

最佳答案

我正是有这个问题。问题是我使用的是非标准 Python,而 PYTHONPATH 没有正确设置。

我的解决方案是在我的文件中更改此语句 10-wsgi.conf :

LoadModule wsgi_module modules/mod_wsgi.so

对此:
LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /apps/intelpython3_2019.2/

然后,当 wsgi 启动时,它开始使用我的 Intel Anaconda python 版本,而不是默认的 python。

就我而言,我还需要重新编译 mod_wsgi使用 Python3:
./configure --with-python=/apps/intelpython3_2019.2/bin/python3

我还需要将 Python 库添加到系统库中:
$ cat /etc/ld.so.conf.d/python3.conf 
/apps/intelpython3_2019.2/lib

而且当然:
# ldconfig

关于apache - Apache : Could not find platform independent libraries <prefix> 上的 mod_wsgi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27136246/

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