使用Apache搭建http服务器实现CGI功能

 更新时间:2024年07月15日 11:15:21   作者:无聊的阿乐  
专门处理 HTTP 请求的服务器,也被称为 Web 服务器, 常用的 Web 服务器有 Apache和 Nginx ,当然几大巨头五联网公司也都有其独自研发的 Web 服务器,比如阿里巴巴的Tengine, 这篇文章主要介绍了使用Apache搭建http服务器,实现CGI,需要的朋友可以参考下

一、环境搭建

搭建环境CentOS7.5.

专门处理 HTTP 请求的服务器,也被称为 Web 服务器。 常用的 Web 服务器有 Apache和 Nginx ,当然几大巨头五联网公司也都有其独自研发的 Web 服务器,比如阿里巴巴的Tengine 。 我们使用 Apache 作为 Web 服务器,并按照下面 5 个步骤安装好 Apache 。

1、下载安装包

安装lynx命令,是一种以文本方式查看网页的工具,当然你也可以选择直接百度下载

参考:https://blog.csdn.net/u011641885/article/details/45459199
lynx http://httpd.apache.org/download.cg

我下载的是2.4.54版本。

2、安装依赖包

解压,进入解压目录,

gzip -d httpd- 2.4.54.tar.gz
tar xvf httpd-2.4.54.tar
cd httpd-2.4.54

这时候直接是安装不了的,需要依赖包

(1)下载相关包

gzip -d httpd- 2.4.54.tar.gz
tar xvf httpd-2.4.54.tar
cd httpd-2.4.54

(2)解决apr not found

tar -zxf apr-1.4.5.tar.gz  
cd  apr-1.4.5  
./configure --prefix=/usr/local/apr  
make 
make install  

(3)解决APR-util not found

tar -zxf apr-util-1.3.12.tar.gz  
cd apr-util-1.3.12  
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config --enable-utf8   
make
make install 

(4)解决pcre问题

unzip -o pcre-8.10.zip  
cd pcre-8.10  
./configure --prefix=/usr/local/pcre  
make && make install

安装完所有依赖包之后执行

./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre/bin/pcre-config

接下来执行

makemake install

3、修改配置文件

vi /usr/local/apache/conf/httpd.conf 

打开该行注释

#ServerName www.example.com:80

4、启动服务

/usr/local/apache/bin/apachectl start

停止服务

/usr/local/apache/bin/apachectl stop

重启服务

/usr/local/apache/bin/apachectl restart

5、测试

在你的浏览器输入你的机器的IP地址,就是你配置apache的机器IP,提示以下代表安装成功。

二、测试CGI

1、修改配置文件

vi /usr/local/apache/conf/httpd.conf 

打开该行注释,开启模块

#LoadModule cgid_module modules/mod_cgid.so
#LoadModule alias_module modules/mod_alias.so

2、重启服务

/usr/local/apache/bin/apachectl restart

3、创建CGI脚本

在/usr/local/apache/cgi-bin/ 目录下创建cgiscript脚本,脚本内容如下:

#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 - First CGI Program</title>\n";
   cout << "</head>\n";
   cout << "<body>\n";
   cout << "<h2>Hello World! This is my first CGI program</h2>\n";
   cout << "</body>\n";
   cout << "</html>\n";   
   return 0;
}
g++ -o test cgiscript

4、浏览器测试

在浏览器中输入以下内容:

http://192.168.122.1/cgi-bin/test

到此这篇关于使用Apache搭建http服务器,实现CGI的文章就介绍到这了,更多相关Apache http服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CentOS7 安装 zabbix 4.0 教程(图文详解)

    CentOS7 安装 zabbix 4.0 教程(图文详解)

    这篇文章主要介绍了CentOS7 安装 zabbix 4.0 教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • Linux下如何永久修改主机名的方法步骤

    Linux下如何永久修改主机名的方法步骤

    这篇文章主要介绍了Linux下如何永久修改主机名的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • linux环境下设置shadowsocks+polipo全局代理

    linux环境下设置shadowsocks+polipo全局代理

    XX-NET仅仅可以是用户通过浏览器访问外面世界,而非系统全局代理,使用shadowsocks+polipo技术可使功能进一步拓展
    2018-09-09
  • linux防火墙如何查看状态firewall

    linux防火墙如何查看状态firewall

    这篇文章主要介绍了linux防火墙如何查看状态firewall问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Linux使用less高效读取GC日志的实现方法

    Linux使用less高效读取GC日志的实现方法

    在Linux环境中,日志分析是运维和开发人员日常工作中不可或缺的一部分,特别是对于Java应用的垃圾回收(GC)日志,本文将结合实际案例,详细讲解如何使用 less 命令高效读取和分析GC日志,需要的朋友可以参考下
    2025-04-04
  • Ubuntu16.04安装Jenkins的方法图文详解

    Ubuntu16.04安装Jenkins的方法图文详解

    这篇文章主要介绍了Ubuntu16.04安装Jenkins,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • Linux socket函数详解

    Linux socket函数详解

    在网络编程中,协议是指计算机系统之间进行通信和交互所遵循的规则和约定,协议在网络编程中起着举足轻重的作用,它定义了通信双方的行为规范,确保了网络通信的顺利进行,这篇文章主要介绍了Linux socket函数,需要的朋友可以参考下
    2024-02-02
  • Linux关于透明大页机制的介绍

    Linux关于透明大页机制的介绍

    这篇文章介绍了Linux中的透明大页机制,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-02-02
  • ubuntu下安装程序的三种方法总结(推荐)

    ubuntu下安装程序的三种方法总结(推荐)

    下面小编就为大家带来一篇ubuntu下安装程序的三种方法总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Linux入侵常用命令之防黑客示例代码

    Linux入侵常用命令之防黑客示例代码

    这篇文章主要给大家介绍了关于Linux入侵常用命令之防黑客的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-05-05

最新评论