Skip to content

Releases: DF0ster/http-server

v1.0.1 CMake support

11 Jan 11:56
5fe515c
Compare
Choose a tag to compare

Instructions

  1. Compile the Server:
    Ensure you have OpenSSL installed on your system. Then, compile the project using the following commands:
    mkdir build
    cd build
    cmake ..
    make

  2. Run the Server:
    ./HttpServer

  3. HTTPS Setup:
    Use self-signed certificates for HTTPS support. You can create self-signed certificates using OpenSSL:
    openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout server.key -out server.crt

  4. Custom Configuration:
    Modify configurations as needed (e.g., port number, static directory).

First Release

10 Jan 14:07
7527192
Compare
Choose a tag to compare

First Release (v1.0.0)

I am excited to announce the first release of my C++ HTTP Server! This version includes the following features and improvements:

Features

  • Basic HTTP Server: Handles GET, POST, PUT, and DELETE requests.
  • Static File Serving: Serve static files from a specified directory with support for common MIME types (HTML, CSS, JS, PNG, JPG).
  • HTTPS Support: Secure communication using SSL/TLS with self-signed certificates.
  • Request Handling: Efficiently handles multiple concurrent requests using a thread pool.
  • Graceful Shutdown: Cleanly shut down the server and complete ongoing requests.
  • Modular Structure: Refactored into modular files for better readability and maintainability.

Enhancements

  • Improved Logging: Detailed logging for significant events and errors, including timestamps.
  • Error Handling: Custom HTML error pages for common HTTP errors (404, 400, 500).

Instructions

  • Run the Server: Compile and run the server to start handling requests.
  • HTTPS Setup: Use self-signed certificates for HTTPS support.
  • Custom Configuration: Modify configurations as needed (e.g., port number, static directory).

Future Plans

I plan to add more features and enhancements in upcoming releases, including:

  • Authentication and Authorization
  • WebSocket Support
  • Monitoring and Metrics

Feedback and contributions are welcome!