windows下配置apache以运行CGI

windows下配置apache以运行CGI
引言:

最近接触了一下cgi,想尝试一下cgi的高效性,可是弄了半天还是无法运行一个简单的cgi程序
不过今天我再弄了一下,通过反复测试,竟然发现:
原来用Turboc2编译和连接后生成的exe无法在apache下运行
用VC创建的exe才可以
诶,怎一个"晕"自了得,为了初学者少走点弯路,下面我把今天的一些心得体会记录下来拉

正文:


背景:

操作系统:windows
WebServer:Apache2.0
浏览器:IE6.0

过程:

先安装apache哦
然后配置一下httpd.conf以支持c语言编写的cgi
过程如下:

1,首先配置apache

主要配置如下:

ScriptAlias /cgi-bin/ "E:/apache2/Apache2/cgi-bin/"

<Directory "E:/apache2/Apache2/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

AddHandler cgi-script .exe .pl .cgi

说明:
1)"E:/apache2/Apache2/cgi-bin/"为你安装的apache下的agi-bin目录哦,父目录与子目录之间用/分开
2)至于AddHandler好象是安装exe,pl,cgi文件后缀驱动,但是我在下面执行正确编写并编译好的exe文件改成诸如没有文件后缀、文件后缀为任意类型时也正确。

2,写一个HelloWorld.c的cgi,代码如下:

一个比较简单的例子如下:


Code:
#include <stdio.h>; void main(void) { printf("/n"); printf("Hello, World!Compiled By VC++! /n"); }
[Ctrl+A Select All]


我们用VC编译一下,并创建HelloWorld.exe,复制到apache的cgi-bin目录下
注意:
1)千万得用VC编译哦,因为我用Turboc2编译出现错误,无法执行,原因可能是后者为16位编译器,前者为32位编译器的缘故
2)必须首先输出一个空行

3,下面我们通过
http://localhost:port/cgi-bin/HelloWorld.exe
看看结果
Hello, World!Compiled By VC++!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章