首页 > 解决方案 > 如何为 python 脚本导入 LD_LIBRARY_PATH?没有root权限。没有权限重启apache服务器

问题描述

我在 GoDaddy 托管服务中有一个共享主机。它有以下限制。

我的托管服务系统和应用程序规范。

我使用 cgi 脚本将 apache 服务器重定向到我的 Python 脚本。当 Python 尝试导入 psycopg2 模块时,抛出以下错误

 /home/user/python_base/lib/python3.4/site-packages/psycopg2/_psycopg.cpython-34m.so: undefined symbol: PQescapeIdentifier

我导出了postgresql/lib路径LD_LIBRARY_PATH并在本地重新启动了 Python 脚本,它工作正常。

但是由于我无法重新启动 apache 服务器,我猜想运行 apache 的进程没有LD_LIBRARY_PATH更新。所以错误仍然存​​在。我有一个 python 环境正在运行。我将所有库文件从 复制postgresql/libmypythonenv/lib,仍然是徒劳的。

标签: pythonpostgresqlapachecgiweb-hosting

解决方案


您可以在导入 psycopg2之前设置环境变量。os.environ


推荐阅读