Michael Van Canneyt escreveu:


On Sat, 3 Jul 2010, Luiz Americo Pereira Camara wrote:

I've created some CGI applications with fpWeb with success.

I tried to create a FastCGI application (a simple hello world) but when a request is done the program start, Application.Initialize and Application.Run is called. TCustomWebApplication.HandleRequest (I've monitored OnGetModule) is not called. WebModule is not created.
The application consumes all cpu.

Using fpc 2.4.0, windows xp, apache 2.2.15, mod_fcgid 2.3.5

Any hints on what going wrong?

It was there any fix in fastcgi/fpweb after 2.4.0?

Many, but they are all in trunk, I don't know if any fixes have been merged.

Maybe you can try to copy the fastcgi units over from trunk, and use those
to compile your application.

Compiled fastcgi plus fclweb from trunk. Unfortunately it also does not worked (Attached patch to compile with fpc240).

Does anybody has experience using fpWeb with FastCGI?

Luiz


Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal



Index: src/base/custweb.pp
===================================================================
--- src/base/custweb.pp (revision 15519)
+++ src/base/custweb.pp (working copy)
@@ -89,8 +89,10 @@
     FHandleGetOnPost : Boolean;
     FRedirectOnError : Boolean;
     FRedirectOnErrorURL : String;
-    FEventLog: TEventLog;
+    {$ifndef VER2_4}
+       FEventLog: TEventLog;
     function GetEventLog: TEventLog;
+       {$endif}
   protected
     Function GetModuleName(Arequest : TRequest) : string;
     function WaitForRequest(out ARequest : TRequest; out AResponse : 
TResponse) : boolean; virtual; abstract;
@@ -110,7 +112,9 @@
     Procedure ShowException(E: Exception);override;
     Procedure DoHandleRequest(ARequest : TRequest; AResponse : TResponse);
     Procedure HandleRequest(ARequest : TRequest; AResponse : TResponse); 
virtual;
+       {$ifndef VER2_4}
     Procedure Log(EventType: TEventType; Msg: String); override;
+       {$endif}
     Property HandleGetOnPost : Boolean Read FHandleGetOnPost Write 
FHandleGetOnPost;
     Property RedirectOnError : boolean Read FRedirectOnError Write 
FRedirectOnError;
     Property RedirectOnErrorURL : string Read FRedirectOnErrorURL Write 
FRedirectOnErrorURL;
@@ -122,7 +126,9 @@
     Property Email : String Read GetEmail Write FEmail;
     Property Administrator : String Read GetAdministrator Write FAdministrator;
     property OnShowRequestException: TOnShowRequestException read 
FOnShowRequestException write FOnShowRequestException;
+       {$ifndef VER2_4}
     Property EventLog: TEventLog read GetEventLog;
+       {$endif}
   end;
 
   EFPWebError = Class(Exception);
@@ -282,10 +288,12 @@
   end;
 end;
 
+{$ifndef VER2_4}
 procedure TCustomWebApplication.Log(EventType: TEventType; Msg: String);
 begin
   EventLog.log(EventType,Msg);
 end;
+{$endif}
 
 Procedure TCustomWebApplication.Initialize;
 
@@ -294,12 +302,14 @@
   Inherited;
 end;
 
+{$ifndef VER2_4}
 function TCustomWebApplication.GetEventLog: TEventLog;
 begin
   if not assigned(FEventLog) then
     FEventLog := TEventLog.Create(self);
   Result := FEventLog;
 end;
+{$endif}
 
 function TCustomWebApplication.GetApplicationURL(ARequest: TRequest): String;
 begin
@@ -399,8 +409,9 @@
 
 destructor TCustomWebApplication.Destroy;
 begin
-  if assigned(FEventLog) then
-    FEventLog.Free;
+  {$ifndef VER2_4}
+  FEventLog.Free;
+  {$endif}
   inherited Destroy;
 end;
 
Index: src/base/fpcgi.pp
===================================================================
--- src/base/fpcgi.pp   (revision 15519)
+++ src/base/fpcgi.pp   (working copy)
@@ -38,7 +38,9 @@
 
 begin
   Application:=TCGIApplication.Create(Nil);
+  {$ifndef VER2_4}
   CustomApplication:=Application;
+  {$endif}
 end;
 
 Procedure DoneCGI;
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to