Я использую php (7.3.7) для запуска октавного скрипта на веб-сервере (iis для windows 10).
В частности, октавный скрипт решает ряд дифференциальных уравнений и создает текстовый файл.
Сценарий php выглядит следующим образом:
<?php
system('cd C:\inetpub\wwwroot\BRwebapp\ && "C:\Octave\Octave-5.1.0.0\octave.vbs" --no-gui --persist compart.m');
?>
Как ни странно, команда:
C:\inetpub\wwwroot\BRwebapp\ && "C:\Octave\Octave-5.1.0.0\octave.vbs" --no-gui --persist compart.m
работает нормально при выполнении на cmd и выдает желаемый результат (. текстовый файл).
Однако скрипт php зависает. Браузер (я пробовал и Chrome, и Firefox) просто загружается без результатов (не выводит никаких ошибок в консоли). Я также использовал exec () вместо system (), но безрезультатно. Я проверил, что php работает (используя <?php phpinfo(); ?>
).
Есть идеи? Большое спасибо!
ОБНОВЛЕНИЕ Я наконец решил эту проблему, следуя инструкциям, представленным здесь Marle1: Foo.cmd не будет выводить строки в процессе (на веб-сайте)