青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 297,  comments - 15,  trackbacks - 0
來源于CU的一個(gè)帖子,問如何查看web服務(wù)器信息,忽然想起自己好像也比較想知道,遂google之

  [root@dbrg-2 ~]# curl -I www.baidu.com

  HTTP/1.1 200 OK

  Date: Wed, 29 Jul 2009 02:51:19 GMT

  Server: BWS/1.0

  Content-Length: 3509

  Content-Type: text/html

  Cache-Control: private

  Expires: Wed, 29 Jul 2009 02:51:19 GMT

  Set-Cookie: BAIDUID=0D5F54C0853B7C38D6BD3A3E5EA63C44:FG=1; expires=Wed, 29-Jul-39 02:51:19 GMT; path=/; domain=.baidu.com

  P3P: CP=" OTI DSP COR IVA OUR IND COM "

  [root@dbrg-2 ~]# wget -S --spider www.baidu.com

  --10:51:34-- http://www.baidu.com/

  => `index.html

  那么工具是實(shí)現(xiàn)了,如何用c來實(shí)現(xiàn)呢... 其實(shí)也很簡(jiǎn)單,我剛開始還走了點(diǎn)彎路想的是去查看wget or curl的源碼,奈何那種代碼相互之間依賴性太強(qiáng)實(shí)在不易閱讀,于是自己用wireshark抓包, so easy!!!!有興趣的自己去抓下

  #include <stdio.h>

  #include <stdlib.h>

  #include <unistd.h>

  #include <string.h>

  #include <sys/socket.h>

  #include <netinet/in.h>

  #include <netdb.h>

  #define HTTPPORT 80

  char* head =

  "HEAD / HTTP/1.0\r\n"

  "Accept: */*\r\n"

  "User-Agent: Wget/1.10.2 (Red Hat modified)\r\n"

  "Host:127.0.0.1\r\n"

  "Connection: Keep-Alive\r\n\r\n";

  int connect_URL(char *domain,int port)

  {

  int sock;

  struct hostent * host;

  struct sockaddr_in server;

  host = gethostbyname(domain);

  if (host == NULL)

  {

  printf("gethostbyname error\n");

  return -2;

  }

sock = socket(AF_INET,SOCK_STREAM,0);

  if (sock < 0)

  {

  printf("invalid socket\n");

  return -1;

  }

  memset(&server,0,sizeof(struct sockaddr_in));

  memcpy(&server.sin_addr,host->h_addr_list[0],host->h_length);

  server.sin_family = AF_INET;

  server.sin_port = htons(port);

  return (connect(sock,(struct sockaddr *)&server,sizeof(struct sockaddr)) <0) ? -1 : sock;

  }

  int main()

  {

  int sock;

  int ret;

  char buf[100];

  char *domain = "127.0.0.1";

  FILE* fp = fopen("test","w+");

  if(NULL == fp){

  printf("can't open stockcode file!\n");

  return -1;

  }

  sock = connect_URL(domain,HTTPPORT);

  if (sock <0){

  printf("connetc err\n");

  return -1;

  }

  send(sock,head,strlen(head),0);

  while(1)

  {

  if((ret=recv(sock,buf,100-1,0))<1)

  break;

  buf[ret]='\0';

  printf("%s", buf);

  fprintf(fp,"%s",buf); //save http data

  }

  fclose(fp);

  close(sock);

  //printf("bye!\n");

  return 0;

  }


from:

http://linux.chinaitlab.com/server/800420_2.html


posted on 2010-01-21 15:59 chatler 閱讀(426) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Linux_SysAdmin
<2010年5月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個(gè)博客還是不錯(cuò),雖然做的東西和我不大相關(guān),覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美视频在线观看一区二区| 欧美成人一区在线| 国产视频一区三区| 国产精品入口66mio| 国产精品欧美在线| 国产欧美精品在线播放| 国产人久久人人人人爽| 国产自产在线视频一区| 亚洲国产另类精品专区| 日韩午夜电影av| 亚洲中字黄色| 久久青青草综合| 亚洲黄色在线观看| 亚洲国产精品999| 亚洲精品一区二区三区在线观看| 夜夜躁日日躁狠狠久久88av| 亚洲欧美成人| 老鸭窝亚洲一区二区三区| 欧美精品一区二区精品网| 国产精品99免费看| 国内精品**久久毛片app| 亚洲精品欧美日韩专区| 亚洲欧美在线另类| 欧美高清在线精品一区| 亚洲一区黄色| 欧美成人在线免费观看| 亚洲一区二区在线免费观看| 美女精品在线观看| 模特精品在线| 一区二区三区视频在线播放| 久久国产精品久久国产精品| 欧美日韩国产成人高清视频| 国产午夜亚洲精品理论片色戒| 亚洲国产精品久久人人爱蜜臀| 亚洲一区二区动漫| 美女视频黄免费的久久| 亚洲视频在线观看| 欧美激情精品| 一区二区亚洲欧洲国产日韩| 亚洲免费视频在线观看| 亚洲激情午夜| 久久久精品性| 国产亚洲在线| 亚洲永久免费av| 亚洲精品久久久久久一区二区 | 欧美精品97| 海角社区69精品视频| 亚洲天堂av高清| 亚洲国产cao| 久久国产视频网站| 国产精品日韩一区| 亚洲欧美中文另类| 亚洲伦理在线| 欧美日韩日本国产亚洲在线| 亚洲日韩欧美视频| 欧美激情久久久久| 久热精品视频| 91久久国产综合久久蜜月精品 | 一区二区三区色| 欧美激情精品久久久久久黑人| 一区二区三区在线免费播放| 久久久噜噜噜久久久| 亚洲欧美日韩一区在线| 国产精品美女久久久久久久 | 亚洲国产成人精品女人久久久 | 久久久久久久久久久成人| 国产欧美日韩综合一区在线观看 | 亚洲欧洲免费视频| 亚洲国产精品久久91精品| 久久婷婷人人澡人人喊人人爽| 国内精品久久久久久久果冻传媒| 久久久久久9999| 久久久中精品2020中文| 伊人久久男人天堂| 欧美韩日亚洲| 日韩午夜一区| 亚洲欧美日韩精品久久久久| 一本色道久久综合亚洲精品小说| 欧美日韩国产一区二区三区地区 | 欧美成人精品在线视频| 久久午夜色播影院免费高清| 亚洲国产日本| 日韩亚洲成人av在线| 国产精品欧美久久| 久久精品夜色噜噜亚洲a∨| 久久久久久国产精品一区| 91久久综合亚洲鲁鲁五月天| 一本久久知道综合久久| 国内精品嫩模av私拍在线观看| 欧美不卡高清| 欧美亚洲第一区| 久热精品视频| 欧美视频不卡| 欧美99在线视频观看| 欧美日韩a区| 久久久久久久91| 欧美精品在线一区二区| 欧美资源在线观看| 欧美成人精品一区二区| 欧美亚洲系列| 欧美国产在线观看| 久久精品国产一区二区电影| 欧美二区视频| 久久久久久九九九九| 国产精品不卡在线| 欧美激情视频在线播放| 国产农村妇女精品一二区| 亚洲第一精品久久忘忧草社区| 国产伦精品一区二区三区照片91| 亚洲激情电影在线| 一区二区三区在线视频播放| 亚洲尤物在线| 亚洲视频一区二区在线观看| 久久国产欧美| 久久av一区二区三区漫画| 欧美理论在线播放| 欧美高清一区二区| 影音先锋成人资源站| 午夜精品影院在线观看| 亚洲永久视频| 欧美午夜性色大片在线观看| 亚洲黄色在线视频| 亚洲精品一二区| 欧美va亚洲va香蕉在线| 久久在线免费| 黄色亚洲精品| 久久国产精品毛片| 久久天堂精品| 国产一区二区三区四区| 亚洲欧美高清| 欧美一区免费| 国产一区二区日韩| 亚久久调教视频| 久久精品中文字幕一区二区三区| 国产精品免费小视频| 在线亚洲精品| 欧美中文在线字幕| 国产香蕉97碰碰久久人人| 亚洲欧美成人一区二区在线电影| 午夜免费久久久久| 99精品欧美一区二区三区| 国产精品久久午夜夜伦鲁鲁| 99精品热6080yy久久| 宅男噜噜噜66一区二区| 欧美日韩综合另类| 一区二区三区四区五区在线| 亚洲一区二区在线播放| 国产精品成人一区二区| 亚洲深夜福利网站| 欧美一区二区三区在线视频| 国产日韩一区二区三区在线| 欧美在线高清视频| 裸体一区二区| 亚洲狼人综合| 欧美体内she精视频在线观看| 亚洲视频二区| 久久精品一区二区三区中文字幕| 一区二区视频免费完整版观看| 美女精品网站| 亚洲精品中文字| 午夜日韩视频| 亚洲国产成人久久综合| 欧美人与禽性xxxxx杂性| 一区二区黄色| 久久免费国产精品| 亚洲精品一区二区三区99| 欧美视频精品在线| 欧美一区二区免费| 亚洲国产一区二区三区高清| 亚洲视频一区二区免费在线观看| 国产一区二区中文字幕免费看| 老司机一区二区| 亚洲午夜国产一区99re久久| 久久夜色精品国产| 一区二区三区欧美视频| 国产一区日韩一区| 欧美日韩免费一区| 欧美一站二站| 亚洲狼人综合| 快播亚洲色图| 亚洲欧美在线视频观看| 亚洲激情视频网站| 国产日韩精品一区二区三区在线| 免费亚洲婷婷| 久久99在线观看| 亚洲视频图片小说| 亚洲国产视频直播| 久久精品在这里| 亚洲视频第一页| 亚洲国产日韩欧美在线图片 | 欧美在线999| 日韩午夜激情电影| 国产日韩欧美日韩大片| 欧美第十八页| 久久久999国产| 亚洲欧美国产一区二区三区| 亚洲精品免费一区二区三区| 蜜臀av性久久久久蜜臀aⅴ四虎 | 欧美一区二区三区视频免费| 日韩一区二区精品视频|