gpt4 book ai didi

php - nslookup 查询的 shell_exec 空响应

转载 作者:太空狗 更新时间:2023-10-29 12:43:27 25 4
gpt4 key购买 nike

我正在使用 Ubuntu 和 xampp,我正在尝试通过 nslookup gmail.com 执行命令。 PHP,但我得到的是空响应。当我在 Windows 机器和运行 CentOS 的 Linux 服务器上尝试时,同样的事情起作用了。

仅供引用 nslookup gmail 当我直接在我的终端上运行命令时给出正确的响应,问题仅在我尝试通过它执行时出现。 PHP.

我什至尝试做一个 which nslookup 然后$nslookup = shell_exec("/usr/bin/nslookup $server"); 没有任何帮助,但同样是空白响应。

尽管请注意从 PHP 执行命令 whoami(我在下面的代码中对其进行了注释)确实给出了 daemon 的正确响应>

我是 Ubuntu 的新手,所以一点帮助会很棒。

<?php
$email = $_GET['email'];
$server = explode("@", $email)[1];
echo $server;

$nslookup = shell_exec("nslookup $server");
// $nslookup = shell_exec("whoami");
print_r($nslookup);
?>

最佳答案

当您通过网络浏览器执行时,php 脚本将作为特权较低的 www 用户(在您的情况下为守护程序)执行。它没有足够的权限来执行命令 nslookup。我不建议增加 www 用户的权限,这是一种安全风险。作为替代尝试 gethostbyname php函数。它返回与给定 Internet 主机名对应的 IPv4 地址。

<?php
$email = $_GET['email'];
$server = explode("@", $email)[1];
echo $server;
$ip = gethostbyname($server);
echo $ip;
?>

关于php - nslookup 查询的 shell_exec 空响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33974037/

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