ubuntu上的php proc_open命令错误与python

ubuntu上的php proc_open命令错误与python,php,python,linux,ubuntu,ssl,Php,Python,Linux,Ubuntu,Ssl,当我试图在ubuntu上通过php使用youtube dl时,我遇到了这个问题 我正在使用XAMPP for Linux v1.8.3(PHP5.5.9) 执行后收到的错误: {“状态”:0,“错误”:“回溯(最近一次调用):文件” \导入youtube_dl文件中的“/usr/bin/youtube dl\”第3行 \“/usr/lib/python2.7/dist-packages/youtube\u-dl/\u-init\u.py\”, 第65行,从.utils导入(文件 \“/usr/

当我试图在ubuntu上通过php使用youtube dl时,我遇到了这个问题

我正在使用XAMPP for Linux v1.8.3(PHP5.5.9)


执行后收到的错误:

{“状态”:0,“错误”:“回溯(最近一次调用):文件” \导入youtube_dl文件中的“/usr/bin/youtube dl\”第3行 \“/usr/lib/python2.7/dist-packages/youtube\u-dl/\u-init\u.py\”, 第65行,从.utils导入(文件 \“/usr/lib/python2.7/dist packages/youtube_dl/utils.py\”,第行 18,在导入ssl文件\“/usr/lib/python2.7/ssl.py\”的第61行中 导入_ssl#如果我们无法导入它,让错误传播 进口恐怖主义: /usr/lib/python2.7/lib-dynload//\u ssl.x86\u 64-linux-gnu.so:symbol 常规\u名称\u免费,文件中未定义OPENSSL\u 1.0.0版本 带链接时间参考的libcrypto.so.1.0.0

这是我的php代码

<?php
    $url = 'https://www.youtube.com/watch?v=xFQFMSNZW08&list=RDV-jLo0Ovems';
    //escapeshellarg
    $string = ('youtube-dl --max-quality 2180 --write-thumbnail -x --audio-format mp3 -c -o "/home/bahaa/%(id)s.%(ext)s" https://www.youtube.com/watch?v=xFQFMSNZW08&list=RDV-jLo0Ovems');

    $descriptorspec = array(
        0 => array("pipe", "r"),  // stdin
        1 => array("pipe", "w"),  // stdout
        2 => array("pipe", "w"),  // stderr
    );

    $process = proc_open($string, $descriptorspec, $pipes);
    $stdout = stream_get_contents($pipes[1]);
    fclose($pipes[1]);
    $stderr = stream_get_contents($pipes[2]);
    fclose($pipes[2]);
    $ret = proc_close($process);
    echo json_encode(
        array(
            'status' => $ret,
            'errors' => str_replace(array('', "\n"), "<br />", $stderr."<hr />"),
            'output' => $stdout,
        )
    );
?>

这是python驱动的
youtube dl
的问题,因此您最好将此问题改为
youtube dl
的问题,并以更可读的方式发布您的回溯。这里似乎没有php问题,没有兄弟,youtube dl没有问题,因为youtube dl在gnome终端上工作正常。我只有在我将它与phpDid一起使用,您尝试使用
系统
shell_exec
运行它?与shell_exec是相同的