码迷,mamicode.com
首页 > Web开发 > 详细

开发Apache服务器上的CGI程序

时间:2015-06-27 18:13:51      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

最近学习Cocos2d-x,其中的Cocos2d-x使用CCHttpClient实现网络通信,在此做个总结:

工具:VS2013、Apache服务器

所用语言:C语言

程序实例一:(实现一个简单的HelloWorld)

1.首先使用VS2013编译下面代码(httpserver.c)

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main()
{
    //设置HTML语言  
    printf("Content-type:text/html\n\n");

    //html中的换行符为<br>  
    printf("hello world, 我是CGI !<br>");
}

2.生成exe文件(httpserver.exe)

3.然后将exe文件copy到C:\Program Files\Apache Software Foundation\Apache2.2\cgi-bin(注意这是Apache的安装目录),同时启动Apache,并把文件改成(httpserver.cgi)

4.然后用浏览器访问http://localhost/cgi-bin/httpserver.cgi

5.结果:

技术分享

 

程序实例二:(进阶篇)

1.使用VS2013编译下面代码:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main()
{
    //设置HTML语言
    printf("Content-type:text/html\n\n");

    //通过环境变量得到用户传递的参数
    char* queryString = getenv("QUERY_STRING");

    //分解字符串queryString
    //将字符串queryString分割成两个字符串,‘|‘为分隔符
    char* username = strtok(queryString, "|");
    char* password = strtok(NULL, "|");

    //判断用户名和密码是否输入正确
    if (0 == strcmp(username, "xiao") && 0 == strcmp(password, "miao"))
    {
        printf("Login success !<br>");
    }
    else
    {
        printf("Login Error !<br>");
    }
}

2.生成httpserver.exe

3.然后将exe文件copy到C:\Program Files\Apache Software Foundation\Apache2.2\cgi-bin(注意这是Apache的安装目录),同时启动Apache,并把文件改成(httpserver.cgi)

4.然后用浏览器访问http://localhost/cgi-bin/httpserver.cgi?xiao|miao

5.结果:

技术分享

 

 

从上面的示例我们就可理解cgi的工作过程,因而对写CCHttpClient的网络通信有很大的帮助!

 

开发Apache服务器上的CGI程序

标签:

原文地址:http://www.cnblogs.com/sxmcACM/p/4604351.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!