最近一直在研究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 在 <Directory /> 和 <Directory /var/www/>块中分别加入 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 其他的配置文件也不难推断出其作用~仔细看一下就行~ 基本介绍到这,希望对需要的朋友有所帮助. |
|