HTML不显示字符

时间:2015-12-24 11:18:31

标签: php html firefox lighttpd

我在Debian 8.2上运行lighttpd 1.4.35。我有一个非常简单的html文件与php代码(php5)调用bash脚本并打印输出:

<html>
<body>
<?php
    $res = shell_exec("/var/www/html/run.sh");
    echo $res . " is the result";
?>
</body>
</html>

如果在Firefox上调用该html文件,则输出为

 is the result

如果我直接用该文件(php index.php)运行php,则输出为

<html>
<body>
13.00
 is the result</body>
</html>

那么,结果会在哪里丢失?

编辑: 来自firefox的网页源代码是

<html>
<body>

 is the result</body>
</html>

编辑:已解决。 bash脚本使用'〜',当从webserver运行脚本时,它会扩展到错误的目录。

2 个答案:

答案 0 :(得分:1)

exec函数“only”返回stdout的内容,这就是你可能会错过错误信息的原因 但你可以redirect stderr来标准,例如通过

$res = shell_exec("/var/www/html/run.sh 2>&1");

答案 1 :(得分:0)

如果您处于安全模式,则

shell_exec无法运行,这可能是问题