ubuntu20.04 Apache2.4配置C/C++ CGI环境

发布时间:2021-11-27 20:05:12

配置个C++ CGI环境真是要给人整死,所幸终于解决了~

环境:ubuntu-server 20.04 LTS

卸载apache2

(要保留网页文件的不要 rm -rf /var/www)

apt autoremove apache2
rm -rf /etc/apache2
rm -rf /var/www
dpkg -P apache2
1.安装apache2

root用户:

apt update
apt install apache2

安装成功后应该会自启动,没启动的话

systemctl start apache2

浏览器输入localhost访问,这里用域名访问了,总之会出现下面的页面,说明安装成功。
在这里插入图片描述

2.建立软链接

首先“ cd /etc/apache2 ” 进入到apache2的目录里输入ls查看
可以看到这两个文件夹 ” mods-enabled “ 和 ” mods-available “
其中 ” mods-enabled “ 为常用的(也就是默认开启的), ” mods-available “为不常用的(也就是默认不开启)
(引自 Ubuntu16.04下Apache2的CGI简单配置)

对三个文件:cgid.conf、cgid.load、cgi.load 建立软链接
cd /etc/apache2
ln  -s  mods-available/cgid.conf  mods-enabled/cgid.conf
ln  -s  mods-available/cgid.load  mods-enabled/cgid.load
ln  -s  mods-available/cgi.load  mods-enabled/cgi.load
3.开放端口

看个人需求,这里以开放端口6000为例,在Listen 80下面加上Listen 6000

cd /etc/apache2
vim ports.conf

在这里插入图片描述
重启apache2

systemctl restart apache2

据说也要改sites-enabled中配置文件的端口,但是没改也能用,搞不懂。

4.开启支持cgi
a2enmod cgi
systemctl restart apache2
5.编写测试CGI

默认cgi路径为usr/lib/cgi-bin

cd /usr/lib/cgi-bin
vim 1.cpp
#include <iostream>

using namespace std;

int main(void)
{
        cout << "Content-type:text/html\r\n\r\n";
        cout << "succeed" << endl;

}
g++ 1.cpp -o 1.cgi
chmod 755 1.cgi

注意,按照规范,CGI的标准输出要写Head信息(这里用Content-type),具体另行查询。
否则页面会500错误
在这里插入图片描述

浏览器访问

在这里插入图片描述
成功执行了CGI程序

一次性配置

apt update
apt install apache2
cd /etc/apache2
ln  -s  mods-available/cgid.conf  mods-enabled/cgid.conf
ln  -s  mods-available/cgid.load  mods-enabled/cgid.load
ln  -s  mods-available/cgi.load  mods-enabled/cgi.load
a2enmod cgi
systemctl restart apache2

我解决了,你解决了吗?

参考博客:Ubuntu16.04下Apache2的CGI简单配置

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

barbyQAQ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值