我编写了一个程序,该程序将在服务器上运行ps
命令,对其进行解析并使用表创建一个html页。页面应该每3秒更新一次,所有这些都使用cgi c ++。所以我的问题是我可以在html文件中使用哪个标签(如果存在)来运行我的cgi应用程序,并粘贴输出(cgi返回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>
#include <iostream>
using namespace std;
int main()
{
cout << "Content-Type: text/html; charset=utf-8\n";
cout << "\n";
cout << "<title> Hey </title> ";
return 0;
}
答案 0 :(得分:0)
您需要的是此处的通用网关接口(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,它应该也可以类似地工作,因此请尝试应用我上面所说的内容。