我在使用当前设置配置mod_wsgi时遇到了问题。
Redhat 2.6.32
安装设置为非root用户:
我似乎已成功将mod_wsgi安装到/ apache / modules。
问题:
LoadModule wsgi_module modules/mod_wsgi.so
但是我返回了:
$HOME/apache/modules/mod_wsgi.so into server: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
任何人都可以解释我如何在当前的设置中使用mod_wsgi吗?
答案 0 :(得分:0)
问题可能是因为您自编译了mod_wsgi,并且您使用的Python安装位于非标准位置。在这种情况下,您需要在为mod_wsgi运行LD_RUN_PATH
时设置make
环境变量,并将其设置为Python库所在的目录。这样就可以了解Python库的位置,并将其嵌入到mod_wsgi中。 mod_wsgi文档中描述了此问题:
如果由于某种原因无法重建mod_wsgi,您还可以使用以下方法强制将Python共享库加载到Apache中:
LoadFile /some/path/lib/libpython3.6m.so.1.0
这应该位于mod_wsgi的LoadModule
行之前。
答案 1 :(得分:0)
您的libpython3.6m.so.1.0
不在任何apache的库路径中。
您可以将其符号链接到apache的库路径中的一个lib目录,或者您可以将libpython3.6m.so.1.0所在的目录添加到apache的库路径中。
请查看此问题以获取有关apache路径的帮助:https://serverfault.com/questions/151328/setting-apache2-path-environment-variable