我继承了CentOS Asterisk服务器集群,其中一个服务器运行检查,我已经负责在其他服务器上进行复制。
此检查的一部分涉及在第一台服务器上运行没有问题的AGI - 但在其他服务器上,吐出ImportError: No module named asterisk.agi
AGI中似乎导致问题的一行是from asterisk.agi import *
我可以在工作服务器和非工作服务器之间看到的唯一区别是Python版本。在工作服务器中键入python
将返回
Python 2.4.3 (#1, Jan 9 2013, 06:49:54)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
..但是,在非工作服务器中返回
Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
我用Google搜索,无法找到我出错的地方。我担心打破其他依赖关系,因为这些服务器上运行了许多AGI脚本。
有没有人有任何指示或建议?
答案 0 :(得分:0)
你缺少python模块。使用分发包管理器(如果可用)安装它们或使用pip install <module name>
。您必须检查脚本使用的模块。使用python模块检查lib目录。
答案 1 :(得分:0)
您需要将Python版本从Python 2.6.6降级到Python 2.4.3。
答案 2 :(得分:0)