Linux 服务器上的 C++ CGI

c++ cgi on linux server

本文关键字:C++ CGI 服务器 Linux      更新时间:2023-10-16

我对CGI很陌生,想试一试。这是我的情况:我的网站托管在Linux服务器上,我已经联系了托管公司,他们说只要我使用cgi-bin文件夹就没有问题。所以我写了一个非常短的 c++ 程序,只输出一些文本:

#include <iostream>
using namespace std;
int main()
{
 cout << "Hello from c++ cgi";
 return 0;
}

由于它是一个 linux 服务器(并且我正在运行 Windows),我想我需要在 linux 中编译源代码,以便安装运行 Ubuntu 的虚拟机。然后我编译了源代码(在 Ubuntu 中对其进行了测试),并将二进制文件放在 cgi-bin 文件夹中。然后我使用一个简单的 html 锚点链接到它:

<a href="cgi-bin/cgiTest">T</a>

但是当我单击页面上的链接时,我收到"500 内部服务器错误"消息。我还尝试将二进制文件重命名为"cgiTest.cgi"并更新链接,但仍然存在相同的问题。

有人知道我的问题在哪里吗?

你忘了输出任何HTTP头(错误日志条目会给你一个提示)。

#include <iostream>
using namespace std;
int main()
{
 cout << "Content-Type: text/plain" << endl << endl;
 cout << "Hello from c++ cgi";
 return 0;
}

感谢您的帮助,事实证明我不得不更改权限,当我在 32 位 Ubuntu 上编译时,托管服务器是 64 位。我现在在 32 位 Ubuntu 上编译,瞧!,它正在运行。感谢大家帮助解决这个问题!