首页 > 解决方案 > 为什么在使用机器名运行脚本时无法在 php 中运行 exec?

问题描述

Helle coders,我有一个包含以下三行的 PHP 脚本。我的服务器是 Ubuntu,我使用服务器 IP 或服务器主机名通过网络运行此代码。当我使用服务器 IP 运行此脚本时,没有问题。但是当我尝试使用服务器主机名运行此代码时,代码正在运行但 exec 不会执行。有人知道吗?我该如何解决这个问题?

<?php
   $total_sys_memory = array();
   exec("awk '/MemTotal/ {print $2}' /proc/meminfo", $total_sys_memory);
   print_r($total_sys_memory);
?>

我认为问题可能在于使用服务器主机名调用 exec 的特权。

当使用客户端系统中的浏览器时,使用以下地址打开此脚本:

http://192.168.1.101/armiti/login/script.php

执行运行。但是当我用下面的地址打开这个脚本时:

http://server/armiti/login/script.php

exec 不会运行。为什么?

标签: phpubuntuexec

解决方案


推荐阅读