gpt4 book ai didi

php - 如何使用 php 代码在 ejabberd 上注册用户

转载 作者:搜寻专家 更新时间:2023-10-31 21:27:14 25 4
gpt4 key购买 nike

我从 stack over flow 中找到了一个代码,使用 php 在 ejabberd xmpp 聊天服务器中执行注册命令。 (从 PHP 创建 ejabberd 用户)

但是当我执行文件时出现错误:

“须藤:未知用户:ejabberd”“sudo:无法初始化策略插件”

我在我的 ubuntu(14.04 LTS 64 位)机器上运行这段代码我使用的 php 代码如下:

<?php
$username = 'tester';
$password = 'testerspassword';
$node = 'myserver.com';
exec('sudo -u ejabberd /usr/sbin/ejabberdctl register '.$username.' '.$node.' '.$password.' 2>&1',$output,$status);
if($output == 0)
{
// Success!
}
else
{
// Failure, $output has the details
echo '<pre>';
foreach($output as $o)
{
echo $o."\n";
}
echo '</pre>';
}
?>

最佳答案

<?php
$username = 'tester';
$password = 'testerpassword';
$node = 'localhost';

echo exec('sudo -u ejabberd /usr/sbin/ejabberdctl register '.$username.' '.$node.' '.$password.' 2>&1',$output,$status);
die;
if($output == 0)
{
// Success!
echo "success";
}
else
{
// Failure, $output has the details
echo '<pre>';
foreach($output as $o)
{
echo $o."\n";
}
echo '</pre>';
}
?>

我在 $node 中使用 localhost,在 $node 中,您可以根据您在 configure.cfg 中配置的 IP 地址使用您的 IP 地址。

运行上述代码时出现以下错误

no tty present and no askpass program specified ; TTY=unknown ;

所以下面的链接是下面代码的解决方案

sudo in php exec()

执行上述链接过程后

User tester@localhost successfully registered

关于php - 如何使用 php 代码在 ejabberd 上注册用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34305269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com