高分求解CGI程序在IIS上部署的问题。

zllzmcDCR 2006-10-23 09:34:49
高分求解CGI程序在IIS上部署的问题。

我用c写了一个程序 pm.c,该程序主要用来产生一个hmtl输出。代码大致如下:

int main (int argc, char **argv)
{
printf("Content-type: text/html\n\n");
printf("<HTML><BODY>");

//.....`调用其他应用方法,产生输入结果。

printf("</BODY></HTML>");

return 0;
}
生pm.exe,编译指令如
该程序和a.h以及lib.dll用gcc编译后,产下:

gcc -DDLL_IMPORT -I. pm.c -o pm.exe lib.dll

这个程序所在的目录结构如下

project
|
sample
|
|pm.exe
|lib.dll
|a.h

在project目录下,还有一些该程序要用到的资源。

现在在cmd控制台上直接运行该程序,能得到正确的结果。

但是,当我把pm.exe改名为pm.cgi,并且放到IIS目录下,用IE访问pm.cgi时,出错。

IIS目录结构如下,cgi为我建立的站点。

C:
|
Inetpub
|
wwwroot
|
cgi
|
project
|
sample
|
|pm.cgi
|lib.dll
|a.h

访问的URL是: http://localhost/cgi/project/sample/pm.cgi

结果显示:
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:

问题① 怎么才能让pm.cgi正常工作
问题② 我估计是pm.cgi访问某些资源的时候,没有找到相应的东西,但是出错的信息被记录到什么地方了,希望大家告知。

大家一定要救救我哦,郁闷了好几天了,茶饭不思.



附: 我写了一个简单的text.cgi里面只是简单的输入,不用访问本地资源,改成test.cgi后用http://localhost/cgi/project/sample/test.cgi
访问,能出正确结果。
...全文
264 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mapleleaf123 2006-12-02
  • 打赏
  • 举报
回复
帮顶
cloudgamer 2006-11-29
  • 打赏
  • 举报
回复
帮顶
myvicy 2006-10-23
  • 打赏
  • 举报
回复
关注一下。
zllzmcDCR 2006-10-23
  • 打赏
  • 举报
回复
我也比较困惑,除了HTML页面上显示CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:
外,我就找不到其他出错信息了。
ykj76 2006-10-23
  • 打赏
  • 举报
回复
load dll 失败?
zllzmcDCR 2006-10-23
  • 打赏
  • 举报
回复
补充一点,刚才验证了,exe运行的时候,已经用不到lib.dll。.dll只是编译的时候有用。

8,329

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 IIS
社区管理员
  • IIS
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧