Как я могу вставить вывод приложения cgi в html-страницу? - PullRequest
0 голосов
/ 14 октября 2018

Я пишу программу, которая будет запускать команду ps на сервере, анализировать ее и создать HTML-страницу с таблицей.Страница должна обновляться каждые 3 секунды, все это с помощью cgi c ++.Поэтому мой вопрос в том, какой тег (если он существует) я мог бы использовать в html-файле для запуска моего приложения cgi и вставить результат (cgi возвращает HTML-код).Пример:

index.html

<html>
<meta charset="utf-8">
<meta http-equiv='refresh' content='3'>
<body>

<!-- Here I need to execute test.cgi and paste the output right here-->

</body>
</html>

test.cpp

#include <iostream>

using namespace std;

int main()
{
    cout << "Content-Type: text/html; charset=utf-8\n";
    cout << "\n";
    cout << "<title> Hey </title> ";
    return 0;
}

1 Ответ

0 голосов
/ 15 октября 2018

Здесь вам нужен общий интерфейс шлюза (cgi).Если вы используете Apache Webserver, вы можете легко использовать cgi.Просто скомпилируйте ваш сценарий c (один из способов сделать это) в файл типа .cgi и поместите его в место, где вы сконфигурируете файл httpd.conf, чтобы разрешить выполнение CGI.Обязательно дайте ему 605 разрешений, по крайней мере.

в C, я обычно использую

printf("Content-Type: text/html\n\n");

printf(Followed by any HTTP Header I want to use including Refresh)

Добавьте команду ps в ваш скрипт, и она, вероятно, даст вам основныенеотформатированная HTML-страница .. где ваш вывод будет отображаться в левом верхнем углу вашего браузера.Если вы хотите полностью отформатированную страницу, это потребует больше работы, но вам не нужны 2 файла (1 cgi и 1 html), а вместо этого только 1 файл cgi.

Edit1: для Cpp он должен работать аналогично, поэтому попробуйте применить то, что я сказал выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...