PHP exec() 与自定义 Python 模块
* 编辑 *
重新安装模块后,一切都正常了。
我在我的网络服务器上安装了一个Python模块。
当我输入“whereis python”时,得到以下路径:
python: /usr/bin/python2.4 /usr/bin/python /usr/lib/python2.4 /usr/include/python2.4 /usr/share/man/man1/python.1.gz
后来我检查我的模块路径,发现它安装在这里:
/usr/llib/python2.4/site-packages/MyModule/myModule
现在在我的PHP脚本中,我这样做:
exec("python /usr/lib/python2.4/site-packages/MyModule/myModule script.py -v pixfx.xml 2>&1", $output, $return);
这个脚本没有被执行。
到目前为止,我做的有什么问题吗?
谢谢
******************* 编辑 ******************
#! /usr/bin/env python
import sys
import os
import getopt
import re
from fontTools.ttLib import TTFont
from fontTools.ttLib.tables.otBase import OTLOffsetOverflowError
from fontTools.ttLib.tables.otTables import fixLookupOverFlows, fixSubTableOverFlows
from fontTools.misc.macCreatorType import getMacCreatorAndType
from fontTools import version
2 个回答
0
你可能会觉得在运行PHP的用户下进行调试很有用,比如说www-data、apache等。这可以帮助你发现可能出现的权限问题、路径问题或者环境问题。
1
你应该使用
exec("/usr/bin/python /usr/lib/python2.4/site-packages/MyModule/myModule script.py -v pixfx.xml 2>&1", $output, $return);
还是
exec("/usr/bin/python/python /usr/lib/python2.4/site-packages/MyModule/myModule script.py -v pixfx.xml 2>&1", $output, $return);