0

该错误仅发生在 web.xml 中。如果我在控制台中运行它,那没关系。我在 ubuntu 中工作。

我已经使用 CGI 设置了 apache2 来处理 python 并尝试在代码中显示 python 版本,并且可以证明 web 和控制台都在相同的 python 版本和用户上运行。

但是只要导入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 文件的权限不太正确,但我无法弄清楚这一点。

如果有人可以提供帮助,请提前致谢。

垃圾桶

4

1 回答 1

0

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

于 2017-06-07T22:04:13.803 回答