从php错误执行python文件

从php错误执行python文件,php,python,django,shell,Php,Python,Django,Shell,我有一些问题 此php(uploads.php)脚本执行gif.py python文件 <?php $file_path = "uploads/"; $auth_token = $_POST['auth_token']; mysql_connect('localhost',"login",'pass'); mysql_set_charset("UTF-8"); mysql_select_db("DB_name"); $sql = "SE

我有一些问题

此php(uploads.php)脚本执行gif.py python文件

<?php


    $file_path = "uploads/";
    $auth_token = $_POST['auth_token'];
    mysql_connect('localhost',"login",'pass');
    mysql_set_charset("UTF-8");
    mysql_select_db("DB_name");

    $sql = "SELECT user_id FROM users WHERE auth_token='$auth_token'";
    $result = mysql_query($sql);

    if(mysql_fetch_array($result)['user_id']==0)
    {
        echo "fail auth_token ".$auth_token;
        exit;
    }

    $file_md5 = md5(time()+$auth_token+rand(0,1000));

    $file_path = $file_path . basename( $_FILES['uploaded_file']['name']);
    if(move_uploaded_file($_FILES['uploaded_file']['tmp_name'], "uploads/".$file_md5.".mp4")) {
        $aaa = exec("/usr/bin/python gif.py b9022c5c317cf2317ad3f537dcc1cfbe");
        echo $file_md5."   ".$aaa;
    } else{
        echo "fail ".$_FILES['uploaded_file']['size']." ".$_FILES['uploaded_file']['tmp_name']." ".$file_path ;
    }
 ?>
我有一个上传文件夹
b9022c5c317cf2317ad3f537dcc1cfbe.mp4
文件。我在Linux控制台中调用gif.py或uploads.php文件时,一切正常(php uploads.php或pyhon gif.py),但在apache日志中,我从浏览器中调用uploads.php时,python文件不起作用

/usr/lib/python2.7/dist-packages/IPython/utils/path.py:296: UserWarning: IPython parent '/var/www' is not a writable location, using a temp directory.
  " using a temp directory."%parent)
Traceback (most recent call last):
  File "gif.py", line 2, in <module>
    from moviepy.editor import *
  File "/usr/local/lib/python2.7/dist-packages/moviepy-0.2.1.8.12-py2.7.egg/moviepy/editor.py", line 45, in <module>
    from .video.io.sliders import sliders
  File "/usr/local/lib/python2.7/dist-packages/moviepy-0.2.1.8.12-py2.7.egg/moviepy/video/io/sliders.py", line 1, in <module>
    import matplotlib.pyplot as plt
  File "/usr/lib/pymodules/python2.7/matplotlib/__init__.py", line 774, in <module>
    rcParams = rc_params()
  File "/usr/lib/pymodules/python2.7/matplotlib/__init__.py", line 692, in rc_params
    fname = matplotlib_fname()
  File "/usr/lib/pymodules/python2.7/matplotlib/__init__.py", line 604, in matplotlib_fname
    fname = os.path.join(get_configdir(), 'matplotlibrc')
  File "/usr/lib/pymodules/python2.7/matplotlib/__init__.py", line 253, in wrapper
    ret = func(*args, **kwargs)
  File "/usr/lib/pymodules/python2.7/matplotlib/__init__.py", line 478, in _get_configdir
    raise RuntimeError("Failed to create %s/.matplotlib; consider setting MPLCONFIGDIR to a writable directory for matplotlib configuration data"%h)
RuntimeError: Failed to create /var/www/.matplotlib; consider setting MPLCONFIGDIR to a writable directory for matplotlib configuration data
/usr/lib/python2.7/dist packages/IPython/utils/path.py:296:UserWarning:IPython parent'/var/www'不是使用临时目录的可写位置。
“正在使用临时目录。”%parent)
回溯(最近一次呼叫最后一次):
文件“gif.py”,第2行,在
从moviepy.editor导入*
文件“/usr/local/lib/python2.7/dist packages/moviepy-0.2.1.8.12-py2.7.egg/moviepy/editor.py”,第45行,in
从.video.io.sliders导入滑块
文件“/usr/local/lib/python2.7/dist packages/moviepy-0.2.1.8.12-py2.7.egg/moviepy/video/io/sliders.py”,第1行,在
将matplotlib.pyplot作为plt导入
文件“/usr/lib/pymodules/python2.7/matplotlib/_init__.py”,第774行,在
rcParams=rc_params()
rc_参数中的文件“/usr/lib/pymodules/python2.7/matplotlib/_init__uuu.py”,第692行
fname=matplotlib_fname()
matplotlib\u fname中的文件“/usr/lib/pymodules/python2.7/matplotlib/__init__.py”,第604行
fname=os.path.join(get_configdir(),'matplotlibrc')
包装器中的文件“/usr/lib/pymodules/python2.7/matplotlib/_init__.py”,第253行
ret=func(*args,**kwargs)
文件“/usr/lib/pymodules/python2.7/matplotlib/_init__.py”,第478行,在_get_configdir中
提升RuntimeError(“未能创建%S/.MatPultLB;考虑将MPLCONDIORR设置为可用于MaTuttLIB配置数据的目录”%H)
运行时错误:无法创建/var/www/.matplotlib;考虑将MPLCONDISDR设置为可用于MaToTLIB配置数据的可写目录

请提供帮助,在日志中写入2行错误(来自moviepy.editor import*),但为什么我没有错误调用(python gif.py)?

如注释中所述,问题显示在错误报告的最后一行,请参阅:

RuntimeError: Failed to create /var/www/.matplotlib; consider setting MPLCONFIGDIR to a writable directory for matplotlib configuration data 
我想说的是,
/var/www/
文件夹可能存在权限问题,不允许脚本根据需要创建文件


若要修复此问题,请更改文件夹的权限以使其可写,或指定脚本应将所需文件创建到的其他目录。

错误报告的最后一行中未显示错误:
RuntimeError:Failed To create/var/www/.matplotlib;考虑将MPLCONDIORR设置为可用于MaToTLIB配置数据的可写目录< /代码>,我想它可能是一个权限问题,使用<代码> /VAR/WWW/<代码>文件夹,不允许脚本创建文件为NeDeD.OoooYee EEEEEEEEES!!!!谢谢你的帮助。:)我会把这条评论作为一个回答,以防其他人遇到类似的问题。
RuntimeError: Failed to create /var/www/.matplotlib; consider setting MPLCONFIGDIR to a writable directory for matplotlib configuration data