Tinyhttpサーバのコンパイル運転


Tinyhttpサーバのコンパイル運転
  • ソースはTinyhttpのソースコードをダウンロードします。http://sourceforge.net/projects/tinyhttpd/files/latest/download
  • http.cnのソースコードを変更しました。
    1、        
    //void accept_request(int);
    void *accept_request(void *);
    2、        :
    //void accept_request(int client)
    void *accept_request(void *client1)
    {
        //         
        int client = *(int *)client1;
        ...
        if (strcasecmp(method, "GET") && strcasecmp(method, "POST"))
        {
            unimplemented(client);
            //return;
            //         
            return NULL;
        }
        ...
        close(client);
        //      
        return NULL;
    }
    3、startup   
    //int namelen = sizeof(name);
    socklen_t namelen = sizeof(name);
    4、main   
    //int client_name_len = sizeof(client_name);
    socklen_t client_name_len = sizeof(client_name);
    5、main   
    //if (pthread_create(&newthread , NULL, accept_request, client_sock) != 0)
    if (pthread_create(&newthread , NULL, accept_request, (void *)&client_sock) != 0)
    
  • makeファイルを変更する
    #gcc -W -Wall -lsocket -lpthread -o httpd httpd.c 
     gcc -W -Wall -o httpd httpd.c -lpthread 
    
  • をコンパイルします。
      make
           httpd     
    
  • httdサービスを開始する
              ,      ,  http://127.0.0.1:        。
    
  • インターフェース
  • へのアクセスに成功しました。