Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从其他用户处获取RhythBox信息_Php_Python_C_Dbus_Rhythmbox - Fatal编程技术网

Php 从其他用户处获取RhythBox信息

Php 从其他用户处获取RhythBox信息,php,python,c,dbus,rhythmbox,Php,Python,C,Dbus,Rhythmbox,我的桌面上运行着RhythBox,我希望能够通过web界面远程控制它。然而,我在访问它时遇到了问题,因为rhythmbox客户端抱怨试图访问它的用户(www数据)a)没有运行as X会话,b)没有访问我的rhythmbox dbus信息的权限 (节奏盒客户端:13954):节奏盒警告**:/bin/dbus启动异常终止,出现以下错误:自动启动错误:X11初始化失败。 我在ubuntu 10.04上运行apache和php。通过从不同的用户通过PHPCLI调用php脚本,也尝试了以下方法(使用不同

我的桌面上运行着RhythBox,我希望能够通过web界面远程控制它。然而,我在访问它时遇到了问题,因为
rhythmbox客户端
抱怨试图访问它的用户(www数据)a)没有运行as X会话,b)没有访问我的rhythmbox dbus信息的权限

(节奏盒客户端:13954):节奏盒警告**:/bin/dbus启动异常终止,出现以下错误:自动启动错误:X11初始化失败。

我在ubuntu 10.04上运行apache和php。通过从不同的用户通过PHPCLI调用php脚本,也尝试了以下方法(使用不同的用户将脚本放入我自己的框中)

我尝试过以下方法:

  • 使用“rhythmbox客户端--打印播放--无开始--无重新发送”从php脚本调用system()和exec()
  • 在php中直接使用DBus以及python脚本(通过system()/exec()从php脚本调用它)
  • 在C程序中使用
    setuid()
    setruid()
    seteuid()
    ,并通过php调用它
我现在不知所措。这可能吗

[编辑] 我使用了@IvanGoneKrazy的建议,并从中获取了环境代码。现在我有了带有此错误消息的代码:

import subprocess, os

p = subprocess.Popen('dbus-launch', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for var in p.stdout:
  sp = var.split('=', 1)
  os.environ[sp[0]] = sp[1][:-1]

os.system('rhythmbox-client --print-playing')
错误消息:

(rhythmbox-client:15377): Rhythmbox-WARNING **: Launch helper exited with unknown return code 1