如何导入python脚本的ld_library_path?无根访问.无权重新启动Apache服务器



我在GoDaddy托管服务中有共享的托管。它具有以下限制。

  • 无根访问
  • 无权重新启动Apache Server

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

  • Postgres 10.7
  • python3
  • OS- Linux版本2.6.32-896.16.1.1.4.44.54.54.54.54.54.54.x86_64(mockbuild@buildfarm03.cloudlinux.com)(GCC版本4.4.7 20120313(红色帽子4.4.4.7-18)li>

我使用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/lib复制到mypythonenv/lib,仍然徒劳。

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

最新更新