WCHTTPServer
What is WCHTTPServer
WCHTTPServer is an HTTP/2 + HTTP 1.1 + WebSocket server written in Free Pascal.
The project builds on the fcl-web library and extends it to increase functionality:
- Client management using cookies (saving and maintaining sessions).
- Saving information about clients and sessions in SQLite database.
- Saving information about the latest requests and saving logs in SQLite database.
- Multithreading preparation and execution of requests based on thread pools e.g. helpful classes to work with EventSources.
- Client rankings based on the frequency of client requests.
- Built-in support for gzip and deflate compression methods including decompression of client-side requests.
- WebSocket protocol supported.
- Ability to start the server both in HTTP/2 mode and in HTTP 1.1 mode.
- Modified OpenSSL modules (added necessary TLS extensions) in order to create and maintain HTTP/2 connections.
- Added the ability to save the master key and a random set of client data on the server-side (necessary for debugging TLS dumps using WireShark).
- Works under both Windows and Linux.
Author
- Ilya Medvedkov
Licence
- GNU Lesser General Public License v2.1
Download
From the Free Pascal wiki, page "WCHTTPServer", as it stood on 2021-05-05 after a change by ILya2IK, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
