将 Anaconda python 与 mod_wsgi 一起使用
Using Anaconda python with mod_wsgi
我正在尝试将我的 Apache 服务器设置为在使用 mod_wsgi 时使用 Anaconda python 而不是系统 python。
这是我的 Apache 配置文件:
LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /opt/anaconda/bin
WSGIPythonPath /opt/anaconda/bin:/opt/anaconda/pkgs
我一启动服务器,我的错误日志就充满了
ImportError: No module named site
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
mod_wsgi 是版本 4.4.12,并且使用与我的 anaconda 安装 (2.7.10) 相同版本的 python 编译。
我做错了什么?如何将我的 Apache 配置文件从非默认位置设置为 运行 python?
您的 Python 路径似乎设置不正确。进入你的 Anaconda python 并输入:
import site
site
应该会显示您的站点模块的目录。它应该是这样的:python_path/lib/site.pyc
将您的 Apache 配置更改为:
WSGIPythonPath python_path:python_path/lib/site-packages
其中 python_path
是您在导入 site
时在上面找到的内容。
我迟到了,但我遇到了同样的问题。为了阐明@Ringil 的解决方案,我使用系统安装的 mod_wsgi:
在我的 VirtualHost 配置中包含了类似的内容
WSGIDaemonProcess mysite python-path=/path/to/anaconda2/lib/python2.7/site-packages
请注意,正如@Ringil 指出的那样,site-packages
目录需要位于 PYTHONPATH
。
我正在尝试将我的 Apache 服务器设置为在使用 mod_wsgi 时使用 Anaconda python 而不是系统 python。
这是我的 Apache 配置文件:
LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /opt/anaconda/bin
WSGIPythonPath /opt/anaconda/bin:/opt/anaconda/pkgs
我一启动服务器,我的错误日志就充满了
ImportError: No module named site
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
mod_wsgi 是版本 4.4.12,并且使用与我的 anaconda 安装 (2.7.10) 相同版本的 python 编译。
我做错了什么?如何将我的 Apache 配置文件从非默认位置设置为 运行 python?
您的 Python 路径似乎设置不正确。进入你的 Anaconda python 并输入:
import site
site
应该会显示您的站点模块的目录。它应该是这样的:python_path/lib/site.pyc
将您的 Apache 配置更改为:
WSGIPythonPath python_path:python_path/lib/site-packages
其中 python_path
是您在导入 site
时在上面找到的内容。
我迟到了,但我遇到了同样的问题。为了阐明@Ringil 的解决方案,我使用系统安装的 mod_wsgi:
在我的 VirtualHost 配置中包含了类似的内容WSGIDaemonProcess mysite python-path=/path/to/anaconda2/lib/python2.7/site-packages
请注意,正如@Ringil 指出的那样,site-packages
目录需要位于 PYTHONPATH
。