Как выполнить интерактивную программу оболочки с веб-страницы PHP - PullRequest
1 голос
/ 09 февраля 2011

Допустим, у меня есть локальная веб-страница, которая при нажатии кнопки запускает программу на C. Я уже могу это сделать. Проблема в том, что эта программа выводит журналы и нуждается в вводе от пользователя. У меня вопрос: как я могу отобразить bash-like окно и запустить эту программу через него, чтобы вывод и ввод были видны через экран?

Ответы [ 2 ]

0 голосов
/ 09 февраля 2011

Возможно, вы могли бы использовать ajaxterm и указать программу, которую хотите запустить в качестве оболочки:

ajaxterm.py --command=/your/command --port=yourfavoriteport

Вы можете перенаправить пользователя на указанный порт или отобразитьтерминал через iframe.

0 голосов
/ 09 февраля 2011

Я разрабатываю плагин для jquery "Terminal Emulator" , вы можете проверить это. Если вы пишете свою C-программу как JSON-RPC, вы можете создать свой терминал с одной строкой javascript.

Другое решение состоит в том, чтобы вообще не использовать PHP и создавать свой код в виде CGI, написанного на C или даже на Bash.

Обновление: Вы можете изменить свою программу на CGI-скрипт

int main() {
  printf("Content-Type: text/plain\n\n");
  // code of your program here
}

и поместите его в каталог cgi-bin и запустите через браузер http://yourserver.com/cgi-bin/program отобразит вывод в браузере

...