beta release !
Update file in a quick way
- Super Light🍃: executable size < 30kb, zero-dependency on databases.
- Super Fast⚡: backend in pure C, no external stylesheet or script for frontend.
- libmicrohttpd: Used for HTTP server functionality. GNU LGPL v2.1.
- zlib: For compression request. zlib License.
Please ensure these are installed on your system for the software to function correctly. you may also install via the code below.
# install the dependency
make install
(Optional) change the CONFIG
to meet your demand:
# DO NOT INCLUDE COMMENT!
file_max_byte:10485760 # Maximum file size, in byte
file_expire:1440 # Worker will delete the file after this time, in minute
worker_period:720 # Worker running period, in minute
storage_dir:./files # Where should uploaded files be stored
dump_dist:./dump.bin # Where should the serialized binary be stored
max_file_count:100 # Max file number served
max_client:2 # Max uptime client supported
Then, compile and run:
# make the executable
make
# start the server
./server PORT
If Make
is not installed on your system, consider using the nobuild toolkit. Essentially, it functions as a C-driven alternative to Make, offering support for both POSIX-compliant systems and Windows environments using MSVC. To use it, simply download nobuild.h and put it under the project folder, then:
$ cc nobuild.c -o nobuild
on POSIX systems$ cl.exe nobuild.c
on Windows with MSVC
Then, Run the build: $ ./nobuild
To access comprehensive runtime information, compile the executable in debug mode by running the following command:
make debug
./server_debug