热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Ubuntu系统下的Apache2+fastcgi配置

最近一直在研究unix环境下的编程,而且决定用C写几个fastcgi程序,争取以后能够利用c语言实现通过浏览器来访问嵌入式设备、PDA等小玩意~一定会很有趣现将在ubuntu中的fastcgi环境配置记录如下:ubuntu最吸引人的就是其方便的包管理工具apt,通过apt这个强有
最近一直在研究unix环境下的编程,而且决定用C写几个fastcgi程序,争取以后能够利用c语言实现通过浏览器来访问嵌入式设备、PDA等小玩意~一定会很有趣

现将在ubuntu中的fastcgi环境配置记录如下:

ubuntu最吸引人的就是其方便的包管理工具apt,通过apt这个强有力的工具,我们可以方便地查找和安装所需的软件包。

在命令行中输入

sudo apt-get install apache2

安装好apache2

然后输入

sudo apt-get install libapache2-mod-fastcgi

apt会自动的下载和安装apache和fastcgi的模块
然后重启下apache或者,在/etc/init.d里有apache的启动脚本,如果想禁止apache的自动启动,可以把/etc/下的 rcX.d 中的apache的符号链接删除 ( X是0 - 6 的数字,分别代表不同的启动级别,具体含义可以查阅参考手册 )

非常简单,但是这还不能算结束

如果打算开发fastcgi程序最好再安装fastcgi的开发组件

sudo apt-get install libfcgi-dev

然后还需要修改配置文件,不然在执行cgi程序的时候会有大麻烦....
403错误 权限不够
研究了很久最终比较好的解决办法是:
修改 /etc/sites-available/default


块中分别加入

Options +ExecCGI

这样就能获得执行权限了

到此基本上fastcgi平台已经搭建好了。
我们可以编译个程序实验下
把开发套件中的example/echo.c弄出来.....

gcc -I/usr/local/include/fastcgi -c echo.c

gcc -o echo.fcgi echo.o -L/usr/local/lib -lfcgi
需要说明的是,在ubuntu或者debian中,apache的配置文件很“分散”

在/etc/apache2 中有n多个文件,其实这些文件是将原有的httpd.conf按功能拆分了比如
ports.conf里只有一行
listen 80
知道是干什么的了吧~~呵呵

apache2.conf是主配置文件,里面书写了原来大部分httpd.conf的内容,包括服务器的各种参数

模块管理被放置于 /etc/apache2/mods-enable
包括我们可爱的fcgi

其他的配置文件也不难推断出其作用~仔细看一下就行~

基本介绍到这,希望对需要的朋友有所帮助.


推荐阅读
  • 最适合初学者的编程语言
    本文探讨了适合编程新手的最佳语言选择,包括Python、JavaScript等易于上手且功能强大的语言,以及如何通过有效的学习方法提高编程技能。 ... [详细]
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • Node.js在服务器上的多种部署策略
    本文探讨了Node.js应用程序在服务器上部署的几种有效方法,包括使用Screen、PM2以及通过宝塔面板进行简易管理。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • 解决PHP项目在服务器无法抓取远程网页内容的问题
    本文探讨了在使用PHP进行后端开发时,遇到的一个常见问题:即在本地环境中能够正常通过CURL获取远程网页内容,但在服务器上却无法实现。我们将分析可能的原因并提供解决方案。 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • 本文总结了一次针对大厂Java研发岗位的面试经历,探讨了面试中常见的问题及其背后的原因,并分享了一些实用的面试准备资料。 ... [详细]
  • 本文介绍了如何在不同操作系统上安装Git,以及一些基本和高级的Git操作,包括项目初始化、文件状态检查、版本控制、分支管理、标签处理、版本回退等,并简要提及了开源许可协议的选择。 ... [详细]
  • 提升工作效率:掌握15个键盘快捷键
    在日常工作中,熟练掌握计算机操作技巧能够显著提升工作效率。本文将介绍15个常用的键盘快捷键,帮助用户更加高效地完成工作任务。 ... [详细]
  • 在 Ubuntu 22.04 LTS 上部署 Jira 敏捷项目管理工具
    Jira 敏捷项目管理工具专为软件开发团队设计,旨在以高效、有序的方式管理项目、问题和任务。该工具提供了灵活且可定制的工作流程,能够根据项目需求进行调整。本文将详细介绍如何在 Ubuntu 22.04 LTS 上安装和配置 Jira。 ... [详细]
  • mysql 授权!!
    为什么80%的码农都做不了架构师?MySQL的权限系统围绕着两个概念:认证-确定用户是否允许连接数据库服务器授权-确定用户是否拥有足够的权限执 ... [详细]
  • 本文详细介绍了如何使用Heartbeat构建一个高可用性的Apache集群,包括安装、配置和测试步骤。 ... [详细]
  • Centos7 Tomcat9 安装笔记
    centos7,tom ... [详细]
author-avatar
蒲小平2502897955
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有