如何在windowsXP下运行用c 编写cgi?

简介: 如何在windowsXP下运行用c 编写cgi? 前提是安装apache服务器,apache服务器的conf里面在里面配置好。然后只要把exe文件放到cgi-bin下面就大功告成了。

前提是安装apache服务器,apache服务器的conf里面在里面配置好。

AddType text/html .exe
AddHandler cgi-script .exe .cgi
然后只要把exe文件放到cgi-bin下面就好了
http://127.0.0.1/cgi-bin/1.exe
就可以访问了
cout/printf出来的会输出到网页上

 

添加效果如下图所示:

image.png

不过注意的是:第一行一定要输出一个空行。

示例如下:

//2012-12-4-------------------------------

//仅在VC6.0平台下测试可得好多环境变量都不存在!

//而在安装了Apache服务器后显示会有所不同。

int main ( int argc, char *argv[] )
{
    char *env_var[24] =
{
                     "COMSPEC",
                     "DOCUMENT_ROOT",
                     "GATEWAY_INTERFACE",
                     "HTTP_ACCEPT",
                     "HTTP_ACCEPT_ENCODING",
                     "HTTP_ACCEPT_LANGUAGE",
                     "HTTP_CONNECTION",
                     "HTTP_HOST",
                     "HTTP_USER_AGENT",
                     "PATH",
                     "QUERY_STRING",
                     "REMOTE_ADDR",
                     "REMOTE_PORT",
                     "REQUEST_METHOD",
                     "REQUEST_URI",
                     "SCRIPT_FILENAME",
                     "SCRIPT_NAME",
                     "SERVER_ADDR",
                     "SERVER_ADMIN",
                     "SERVER_NAME",
                     "SERVER_PORT",
                     "SERVER_PROTOCOL",
                     "SERVER_SIGNATURE",
                     "SERVER_SOFTWARE"
       };
      
    printf ("%s\n","Content-Type: text/html\n" );
    printf ( "%s\n","<?xmlversion = \"1.0\"?>" );
    printf ("%s\n","<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML1.1//EN\" " );
    printf ("%s\n","\"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">");
    printf ( "%s\n","<htmlxmlns = \"http://www.w3.org/1999/xhtml\">" );
    printf ("%s\n","<head><title>CGI环境变量</title></head><body>" );
    printf ( "%s\n","<tableborder = \"0\" cellspacing = \"2\">" );
      
for( int i=0;i<24;i++ )
{
        printf ("%s%s%s\n","<tr><td>",env_var[i],"</td><td>");
        char *value = getenv( env_var[i]);
             
        if ( value )
              {
            printf ( "%s",value );
        }
        else
              {
            printf ( "%s","CGI环境变量不存在." );
        }
        printf ("%s\n","</td></tr>" );
    }
      
    printf ("%s\n","</table></body></html>" );
    printf ( "%s\n","C语言编写" );
    return EXIT_SUCCESS;
}
AI 代码解读

 

输出结果显示:

image.png

注意:以上结果是在安装了Apache服务器后的结果,如下图:

image.png

image.png

示例及显示结果:

void main()
{
       printf("Contenttype:text/html\n\n");
       printf("<html>\n");
       printf("<head><title>anHTML Page From a CGI</title></h ead>\n");
       printf("<body><br>\n");
       printf("<h2>This is an HTML page generated from with in a CGI program...</h2>\n");
       printf("<hr><p>\n");
       printf("<ahref=\"../output.html#two\"><b> Go back to output.html page</b></a>\n");
       printf("</body>\n");
       printf("</html>\n");
       fflush(stdout);
}
AI 代码解读

作者:铭毅天下
原文:https://blog.csdn.net/laoyang360/article/details/8288727
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
&#39;php&#39; 不是内部或外部命令,也不是可运行的程序 或批处理文件。
&#39;php&#39; 不是内部或外部命令,也不是可运行的程序 或批处理文件。
499 0
&#39;php&#39; 不是内部或外部命令,也不是可运行的程序 或批处理文件。
Linux虚拟机和Window本地共享文件夹用于PHP项目调试
Linux虚拟机和Window本地共享文件夹用于PHP项目调试
181 0
Linux虚拟机和Window本地共享文件夹用于PHP项目调试
VBScript脚本运用(脚本程序与宿主程序的交互)
做过工控的人都知道,对脚本语言的支持是标准组态软件应具备的一个基本功能(如iFix,组态王等)。如果我们用VB开发类似的功能,能实现吗
797 0
用PHP编写Android应用程序
  Google的开源Android移动操作系统正在席卷全球智能手机市场,和苹果不一样,它对那些想将应用程序提交到iPhone App Store的开发人员有着严格的指导方针和要求,Google的Android平台非常开放,甚至还可以用PHP编写Android应用程序,Irontech创建了一个运行在Android上的PHP移植程序,结合Android的脚本层(Scripting Layer for Android,SL4A),你就可以构建PHP Android应用程序了。
1601 0
PHP xdebug + PhpStorm调试远程服务器代码
PHP xdebug + PhpStorm调试远程服务器代码 1.服务器(linux centos)安装xdebug pecl install xdebug 注意看安装完成之后会显示 debug.so 的路径,记录下来 2.
5044 0

热门文章

最新文章

相关课程

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等