我在linux中安装了gammu,我可以使用shell命令发送短信。但是当我在php页面中添加命令时,我得到以下错误:
$phone = 3588459717;
echo shell_exec ('gammu sendSms TEXT '.$phone.' -text "test msg"');
打开设备错误,不存在
很可能web服务器以不同的用户运行,而在该用户下运行的Gammu看不到您的配置文件和/或没有打开设备的权限。
apache Server下的php进程,以用户权限www-data:www-data运行尝试添加权限,请以root用户启动控制台,并为用户www-data添加权限dialout。
id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data)
usermod -a -G dialout www-data
id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data), 188(dialout)
sudo service apache2 restart
apache重启后,运行PHP脚本