В данный момент мой файл page.php выглядит следующим образом:
<?php
$cmd = './foo < input.txt > output.txt';
$result = shell_exec($cmd);
echo system('date'); //just to see change when refreshing the page
?>
Всякий раз, когда я набираю одну и ту же команду в оболочке, она отлично работает (с файлом input.txt, готовым с примером ввода).
Моя идея состояла в том, чтобы создать интерфейс, использующий php для связи с файлом input.txt, а затем связаться с файлом output.txt, чтобы вернуть результаты на странице.Но, прежде всего, мне нужно убедиться, что я могу запустить имеющуюся у меня программу.
Я скомпилировал с
gcc -Wall -o foo foo.c
Исполняемый файл foo находится в том же каталоге, что и страница.php.
Я пытался с правами доступа 777 для всех файлов (page.php, input.txt и foo)
Сайт запущен и дата меняется при обновлениистраницы, но в каталоге нет файла output.txt.
Я пробовал
$cmd = 'ls -la';
$result = shell_exec($cmd);
echo $result;
, и он работает должным образом, показывая содержимое соответствующего каталога.