Php网页找不到bash文件


Php webpage can not find bash file

我按照这里写的指南从PHP 运行Bash命令

我有/var/www/test.php

<?php $old_path = getcwd();
chdir('/home/');
$output = shell_exec('./test.sh');
echo "<pre>$output</pre>";
chdir($old_path); ?>

并使用sudo nano/home/test.sh 进行定位

#/bin/bash
mystring="Hello World"
echo "$mystring"

然而在本地运行CCD_ 1时,我得到了一个空白页面。我可以从终端运行该文件,并且我可以作为php脚本成功运行shell_exec('ls'),有人能看到我做错了什么吗?

Ok问题在几次打字错误和未设置权限后得到了解决,但主要问题似乎是getcwd()没有在我的操作系统本地或服务器上运行。。。Ubuntu 12.04

因此,对于其他遇到问题的人,一定要:

  • 检查是否可以通过终端执行文件,如果不运行chmod +x /file/location/test.sh
  • 接下来使用echo shell_exec('pwd')检查您所在的目录和移动到的目录
  • 如果不移动目录,请尝试用dirname(__FILE__);替换getcwd()

这为我解决了问题:)现在从php页面向该脚本传递变量!!非常感谢大家的帮助。

`