我的 page.php 文件现在看起来像这样:
<?php
$cmd = './foo < input.txt > output.txt';
$result = shell_exec($cmd);
echo system('date'); //just to see change when refreshing the page
?>
每当我在 shell 中键入相同的命令时,它都能完美运行(输入.txt 文件已准备好带有示例输入)。
我的想法是使用php创建一个接口与input.txt文件通信,然后与output.txt文件通信以在页面上返回结果。但是,首先,我需要确保我可以运行我拥有的程序。
我已经编译了
gcc -Wall -o foo foo.c
foo 可执行文件与 page.php 位于同一目录中。
我已经尝试对所有文件(page.php、input.txt 和 foo)使用 777 权限
该站点已启动并正在运行,并且当我刷新页面时日期会更改,但目录上没有 output.txt。
我试过了
$cmd = 'ls -la';
$result = shell_exec($cmd);
echo $result;
它按预期工作,显示正确目录的内容。