| name | horse-providers |
| description | Guide to selecting and configuring Horse server adapters (Indy console, CGI, ISAPI, Daemon, HTTP.sys). |
Horse Providers
Available Provedores (Server Adapters)
Horse supports multiple execution providers. To change the provider, simply include the corresponding unit in your .dpr uses clause.
Horse.Provider.Console (Default - Indy-based): Launches a standalone console application listening on a TCP port. Best for local development and microservices.
Horse.Provider.Daemon: Integrates Horse with Windows Services or Linux Daemons.
Horse.Provider.HTTPsys: Integrates with the native Windows HTTP Server API (HTTP.sys). Provides high performance and native SSL/HTTPS support on Windows without needing Apache/Nginx.
Horse.Provider.CGI / Horse.Provider.ISAPI: For deployment inside IIS (Internet Information Services) or Apache on Windows.
Horse.Provider.Apache: Native Apache web server module.
Configuration Example
program MyAPI;
{$APPTYPE CONSOLE}
uses
// Include the target provider unit. Only ONE provider should be active.
Horse,
Horse.Provider.HTTPsys;
begin
THorse.Get('/health',
procedure(Req: THorseRequest; Res: THorseResponse; Next: TProc)
begin
Res.Send('healthy');
end);
// Starts the HTTPsys server
THorse.Listen(8080);
end.