ImportError: No module named lxml.etree failed in Apache2 CGI

ImportError: No module named lxml.etree failed in Apache2 CGI

错误只发生在web.如果我在控制台中 运行 它,它是 OK.I 在 ubuntu 中工作。

我已经使用 CGI 设置 apache2 作为句柄 python 并尝试在代码中显示 python 版本并且可以证明网络和控制台都 运行ning 在同一个 python版本和用户。

但是只要import lxml.etree,就报下面的错误

Traceback (most recent call last):
  File "/usr/lib/cgi-bin/TestPy.py", line 3, in <module>
    import lxml.etree as ET
ImportError: No module named lxml.etree

我的 CGI 配置如下: 文件名:serve-cgi-bin.conf

<IfDefine ENABLE_USR_LIB_CGI_BIN>
    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Require all granted


        #AddHandler cgi-script .py
        #Order allow,deny
        #Allow from all

    </Directory>
</IfDefine>

我的python代码如下:

#!/usr/bin/python

import lxml.etree as ET
import sys

print "Content-Type: text/plain\r\n\r\n"
print "Hello World!"

print "[" + sys.version + "]" + "  [" + sys.prefix + "]"
#xml_filename='/var/www/htmprint/Water.xml'
#xsl_filename='/var/www/htmprint/Water.xsl'
#dom = ET.parse(xml_filename)
#xslt = ET.parse(xsl_filename)
#transform = ET.XSLT(xslt)
#newdom = transform(dom)
#print(ET.tostring(newdom, pretty_print=True))

我感觉 lxml.etree 文件的权限不太正确,但我无法理解这一点。

如果有人能提供帮助,在此先感谢。

将包安装到全局站点包,而不是您个人的 .local space。