要在Ubuntu上安装C/C++的CGI编程环境,您需要完成以下几个步骤:
-
安装C/C++编译器: 在终端中运行以下命令安装GNU编译器集合(GCC):
sudo apt update sudo apt install build-essential
这将安装必要的编译工具,包括C/C++编译器。
-
安装Web服务器: 您需要安装一个Web服务器来运行CGI程序。常用的Web服务器是Apache和Nginx。以下是安装Apache Web服务器的步骤:
sudo apt install apache2
-
配置Apache服务器: 默认情况下,Apache已经配置为支持CGI。您只需要确保CGI模块已启用。运行以下命令以启用CGI模块:
sudo a2enmod cgi
-
创建CGI目录: 在Web服务器上,通常会指定一个目录来存储CGI程序。您可以创建一个专门用于存放CGI程序的目录,例如
/usr/lib/cgi-bin
。运行以下命令创建目录并设置相应的权限:sudo mkdir /usr/lib/cgi-bin sudo chown -R www-data:www-data /usr/lib/cgi-bin sudo chmod -R 755 /usr/lib/cgi-bin
-
编写和测试CGI程序: 在创建的
/usr/lib/cgi-bin
目录中编写您的CGI程序。确保程序文件具有可执行权限(例如,chmod +x your_cgi_program
)。 -
配置Web服务器以运行CGI程序: 打开Apache的默认CGI配置文件:
sudo nano /etc/apache2/conf-available/serve-cgi-bin.conf
将以下行添加到文件的末尾:
<Directory "/usr/lib/cgi-bin"> Options +ExecCGI AddHandler cgi-script .cgi .pl </Directory>
保存并关闭文件。
-
启用配置更改并重新启动Apache: 运行以下命令以启用新的CGI配置并重新启动Apache服务器:
sudo a2enconf serve-cgi-bin sudo systemctl restart apache2
现在,您的C/C++ CGI编程环境已在Ubuntu上设置完毕。您可以在/usr/lib/cgi-bin
目录中编写CGI程序,并通过浏览器访问它们。请确保编写的CGI程序具有正确的文件扩展名(如.cgi
或.pl
),并且文件具有可执行权限。
写hello个测试一下。
// hello.cpp
#include <iostream>
using namespace std;
int main ()
{
cout << "Content-type:text/html\r\n\r\n";
cout << "<html>\n";
cout << "<head>\n";
cout << "<title>Hello World - 第一个 CGI 程序</title>\n";
cout << "</head>\n";
cout << "<body>\n";
cout << "<h2>Hello World! 这是我的第一个 CGI 程序</h2>\n";
cout << "</body>\n";
cout << "</html>\n";
return 0;
}
编译后放到cgi-bin目录下:
g++ hello.cpp -o hello
mv hello /usr/lib/cgi-bin/
在浏览器内输入地址即可访问。
http://192.168.171.142/cgi-bin/hello