ich arbeite aktuell an einem kleineren Projekt was einen HTTP Server beinhaltet, und da ich PHP überhaupt nicht leiden kann wollte ich einfach mal FastCGI probieren. Dafür habe ich das Package WebLaz installiert, und ein neues Projekt von dem CustomFastCGI Template erstellt:
Code: Alles auswählen
program fcgiproject1;
{$mode objfpc}{$H+}
uses
Classes,SysUtils,httpDefs,custfcgi;
Type
TFCGIApp = Class(TCustomFCGIApplication)
Public
Procedure HandleRequest(ARequest : Trequest; AResponse : TResponse); override;
end;
Procedure TFCGIApp.HandleRequest(ARequest : Trequest; AResponse : TResponse);
begin
// Your code here
end;
begin
With TFCGIApp.Create(Nil) do
try
Initialize;
Run;
finally
Free;
end;
end.
Nur meckert der jetzt dass die funktion HandleRequest in der Superklasse nicht exsistiert.
Die andere Option ist das Template FastCGI application, aber sobald ich eine solche Anwendung starte bekomme ich die Exception Failed to open input-handle passed from server.
Da zu diesem Thema praktisch keine Dokumentation existiert, wollte ich mal fragen ob sich einer von euch eventuell damit auskennt, und mir eventuell sagen könnte wie zur Hölle dieser Spaß funktioniert. (Kleine Information, ich verwende Nginx, und würde gerne Sockets im Dateisystem verwenden statt einer IP und Port)
Außerdem, wie schaut es aus mit Threading? So wie es auschaut unterstützt die CustomFastCGI Lösung kein Multithreading, wie schaut es mit der FastCGI Application Lösung aus.
Oder gibt es eventuell eine Dokumentation und ich bin nur zu blöd sie zu finden?