| Name | Last commit date | |
|---|---|---|
| .. | ||
| .gitignore | 2 months ago | |
| arg.h | 2 months ago | |
| config.def.h | 2 months ago | |
| config.h | 2 months ago | |
| config.mk | 2 months ago | |
| connection.c | 2 months ago | |
| connection.h | 2 months ago | |
| data.c | 2 months ago | |
| data.h | 2 months ago | |
| http.c | 2 months ago | |
| http.h | 2 months ago | |
| main.c | 2 months ago | |
| Makefile | 2 months ago | |
| quark.1 | 2 months ago | |
| queue.c | 2 months ago | |
| queue.h | 2 months ago | |
| README.md | 2 months ago | |
| server.c | 2 months ago | |
| server.h | 2 months ago | |
| sock.c | 2 months ago | |
| sock.h | 2 months ago | |
| util.c | 2 months ago | |
| util.h | 2 months ago | |
Kris's build of quark
My build of quark, an extremely small and simple HTTP GET/HEAD-only web server for static content.
About
quark is a tiny, secure HTTP server from suckless.org designed to serve static files with minimal attack surface.
Features
- Minimal: Tiny codebase, easy to audit
- Secure: Privilege separation, chroot support
- Fast: Event-driven architecture
- Standards: HTTP/1.1 compliant (GET/HEAD only)
- Virtual hosts: Support for multiple domains
- TLS: Optional TLS support
Usage
# Serve current directory on port 8080
quark -p 8080 -d /var/www/html
# With virtual hosts
quark -p 80 -d /var/www -v vhosts.conf
# With chroot (as root)
quark -p 80 -d /var/www -u nobody -g nogroup
Options
| Flag | Description |
|---|---|
-d |
Document root directory |
-p |
Port to listen on |
-h |
Host/IP to bind to |
-u |
User to drop privileges to |
-g |
Group to drop privileges to |
-v |
Virtual hosts config file |
-l |
Enable directory listing |
Installation
git clone https://github.com/krisyotam/quark
cd quark
sudo make install
Other Suckless Repos
- dwm - dynamic window manager
- st - simple terminal
- dmenu - dynamic menu
- dwmblocks - modular status bar
- scron - simple cron daemon
Contact
- Kris Yotam krisyotam@protonmail.com
- https://krisyotam.com