怎样用idhttpserver代替IIS让用户浏览html或下载文件

更多0分享到:

回复次数:6

怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
关注
SQLDebug_Fan
SQLDebug_Fan
本版等级:怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP

 
怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP 怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
#1 得分:0回复于: 2011-05-29 15:03:31
你要实现HTTP Server?
怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
关注
cgfhz
国风
本版等级:怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP

 
#2 得分:0回复于: 2011-05-30 08:36:43
看idhttpserver的demo
怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
关注
cicidodo
cicidodo
本版等级:怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP

 
#3 得分:0回复于: 2011-05-30 10:16:47
引用楼主 cicidodo 的回复:

是的

怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
关注
lahcs
lahcs
本版等级:怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP

 
#4 得分:0回复于: 2011-05-30 10:28:51
Delphi/Pascal code

 

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
procedure TForm1.IdHTTPServer1CommandGet(AThread: TIdPeerThread;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
const
  WEBROOT = 'C:/www';
var
  RequestDocument:string;
begin
  RequestDocument:=LowerCase(ARequestInfo.Document);
 
  if RequestDocument='/' then
    RequestDocument:='/index.html';
 
  if FileExists(WEBROOT+RequestDocument) then
    begin
      AResponseInfo.ContentStream:=TFileStream.Create(WEBROOT+RequestDocument, fmOpenRead + fmShareDenyWrite);
    end
  else 
    begin
      AResponseInfo.ResponseNo := 404;
    end;
 
  AResponseInfo.Server:='IIS/6.0';
  AResponseInfo.CacheControl:='no-cache';
  AResponseInfo.Pragma:='no-cache';
  AResponseInfo.Date:=Now;
怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
关注
lahcs
lahcs
本版等级:怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP

 
#5 得分:100回复于: 2011-05-30 10:31:06
Delphi/Pascal code

 

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TForm1.IdHTTPServer1CommandGet(AThread: TIdPeerThread;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
const
  WEBROOT = 'C:/www';
var
  RequestDocument:string;
begin
  RequestDocument:=LowerCase(ARequestInfo.Document);
 
  if RequestDocument='/' then
    RequestDocument:='/index.html';
 
  if FileExists(WEBROOT+RequestDocument) then
    begin
      AResponseInfo.ContentStream:=TFileStream.Create(WEBROOT+RequestDocument, fmOpenRead + fmShareDenyWrite);
    end
  else 
    begin
      AResponseInfo.ResponseNo := 404;
    end;
 
  AResponseInfo.Server:='IIS/6.0';
  AResponseInfo.CacheControl:='no-cache';
  AResponseInfo.Pragma:='no-cache';
  AResponseInfo.Date:=Now;
 
end;

这段代码的话,应付一般的html网站应该足够了...

怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP
关注
cicidodo
cicidodo
本版等级:怎样用idhttpserver代替IIS让用户浏览html或下载文件   http://bbs.csdn.net/topics/360248674-LMLPHP

 
#6 得分:0回复于: 2011-05-30 11:07:45
引用 4 楼 lahcs 的回复:

谢谢,太感谢了

04-26 08:39