如何配置apache服务器以使用cgi程序? 我想用C++编写一个测试CGI程序。但是当我按照如下方式设置配置文件时: ScriptAlias /cgi-bin/ "F:/workbench/cgi-bin/" <Directory "F:/workbench/cgi-bin"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> AddHandler cgi-script .exe .pl .cgi ScriptAlias/cgi-bin/“F:/workbench/cgi-bin/” 不允许超限 选项执行CGI 命令允许,拒绝 通融 AddHandler cgi script.exe.pl.cgi

如何配置apache服务器以使用cgi程序? 我想用C++编写一个测试CGI程序。但是当我按照如下方式设置配置文件时: ScriptAlias /cgi-bin/ "F:/workbench/cgi-bin/" <Directory "F:/workbench/cgi-bin"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> AddHandler cgi-script .exe .pl .cgi ScriptAlias/cgi-bin/“F:/workbench/cgi-bin/” 不允许超限 选项执行CGI 命令允许,拒绝 通融 AddHandler cgi script.exe.pl.cgi,apache,cgi,Apache,Cgi,然后编写一个helloworld程序,如下所示: #include <stdio.h> int main(void) { printf("\n"); printf("Hello, World!\n"); return 0; } #包括 内部主(空) { printf(“\n”); printf(“你好,世界!\n”); 返回0; } 并用g++hello.cpp-o hello.cgi编译它 当我重新启动服务器并访问cgi:localhost\cgi-

然后编写一个helloworld程序,如下所示:

#include <stdio.h>
int main(void)
{
    printf("\n");
    printf("Hello, World!\n");
    return 0;
} 
#包括
内部主(空)
{
printf(“\n”);
printf(“你好,世界!\n”);
返回0;
} 
并用g++hello.cpp-o hello.cgi编译它 当我重新启动服务器并访问cgi:localhost\cgi-bin\hello.cgi时
它不起作用。

您需要添加一个HTTP头来描述输出。Http头和Http正文由两个新行字符分隔。我认为如果您包含一个简单的标题,比如“contenttype:text/plain”,那么您的代码就可以工作了。换言之,请尝试:

#include <stdio.h>
int main(void) {
    printf("Content-type: text/plain\n");
    printf("\n");
    printf("Hello, World!\n");
    return 0;
} 
#包括
内部主(空){
printf(“内容类型:text/plain\n”);
printf(“\n”);
printf(“你好,世界!\n”);
返回0;
} 

有类似问题。WHM/cPanel环境?