Is a lightweight web server written in C using sockets. Compilable for Windows and Linux for server static content and media files.
Usage:
tinyc.exe --port <port> --folder <folder_path>
Example:
tinyc.exe --port 5656 --folder /simple_web --backlog 4 --no-print
For help usage:
tinyc.exe --help
Basic usage: tinyc --port 8081 --folder /my_web
example: tinyc --port 3543 --folder simple_web/index.html
Options:
--folder <folder_path>: Folder to serve. By default serve all executable location dir content.
--ip: Set server IP. Default: ANY (Local/Network).
--port <port_number>: Port number. Default is 8081
--backlog <number>: Max server listener.
--max-threads <number>: Max server threads.
--default-redirect <file_path>/: redirect / to default file route. ex: simple_web/index.html
--no-print : No print log (less mem consumption).
--no-file-explorer: Disable file explorer.
- If you dont specify any args, servers will run on localhost:8081 by default serving executable location content.
Has two versions, default multithread (all) using pthread and monothread using nothing (monothread).
make all
make monothread
Windows | GCC | gcc (x86_64-posix-seh-rev1, Built by MinGW-Builds project) 13.1.0 |
Linux | GCC | gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0 |
TODO: add utf-8 support for Windows