Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.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
无法在AGI asterisk中执行php脚本,没有此类文件或目录_Php_Asterisk_Agi - Fatal编程技术网

无法在AGI asterisk中执行php脚本,没有此类文件或目录

无法在AGI asterisk中执行php脚本,没有此类文件或目录,php,asterisk,agi,Php,Asterisk,Agi,我使用AGI(星号网关接口)从拨号计划运行php脚本 我的计划看起来像 exten =>2600,1,Playback(hello-world) same =>n,AGI(agiscript.php) same =>n,Hangup() php看起来像 `#!/usr/bin/php -q <?php require_once('dbconnect.php'); db_connect(); $sql = "update oicall_main set balanc

我使用AGI(星号网关接口)从拨号计划运行php脚本

我的计划看起来像

exten =>2600,1,Playback(hello-world)

same =>n,AGI(agiscript.php)

same =>n,Hangup()
php看起来像

`#!/usr/bin/php -q 
<?php
require_once('dbconnect.php');
db_connect();
$sql = "update oicall_main set balance='100' where username='100';";
$result = mysql_query($sql);
?>`
`#/usr/bin/php-q

这意味着文件包含其他文件或库,无法从此目录访问(可能未使用完整路径)

php cli或php mysql或两者都缺失。安装它们并重新加载星号

对于CentOS:

sudo yum install php-cli php-gd php-mysql
对于Ubuntu/Debian:

sudo apt-get install php-cli php-gd php-mysql

在Centos,它运行良好。您需要确保在asterisk.conf上正确列出指向该文件夹的路径astagdir=>/usr/share/asterisk/agi-bin作为默认的agi-bin文件夹。此外,还需要消除依赖关系。我尝试过其他linux版本,但也遇到了同样的问题。确保您可以从shell运行php-v,否则在php程序上,在头文件中使用PHPCLI而不是#/usr/bin/php。最后一件事,需要正确添加路径,以便它可以在任何地方运行,否则您需要在extensions.conf上使用完整路径(调用php脚本full PATH/var/lib/asterisk/agi bin/agiscript.php,以便它在asterisk CLI设置为debug on的情况下进行处理,以查看是否找到它。这是一种痛苦,但一旦它成功,它将非常棒

sudo apt-get install php-cli php-gd php-mysql