gerow / sbserv

A tiny file server for serving media

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sbserv
======

sbserv is a tiny file server I wrote for my own use. Basically I was not happy
with the fact that Apache's file server didn't support the ability to download
an entire directory as a zip file, so I went ahead and made my own.

Features
========

* List directories
* Recursively download directies as a zip file
* Supports range requests
* Allows playing MKVs through the browser using html5 video element
* Reorder directory listings client side (using Javascript)
* Looks pretty (at least in comparison to apache's default)
* Written in Go

Building
========

Assuming you have go installed and have your go path properly set up, building
sbserv isn't all that difficult. It is a little less straightforward than most
go programs, though, since it requires an additional step in order to allow us
to compile certain static assets into the executable.

1. run "go get github.com/gerow/sbserv". This will try to compile the project
and fail. This is normal. Building will require the addition of one more tool.
2. cd into $GOPATH/src/github.com/gerow/sbserv. Now simply run "make". This
will install all the necessary dependencies for building and create an
executable called "sbserv" that you can use to run the server. If you would
like to cross compile to linux, freebsd, or darwin simply look in the Makefile
for whichever one you would like to do, or just run "make cross-compile" to
cross to all platforms the script knows about.

Usage
=====

Simply run the executable and specify what address to have it bind to.

> ./sbserv localhost:8080

It is suggested that you reverse-proxy sbserv behind something like Apache or
Nginx. In this case you should probably bind to localhost. Otherwise binding to
0.0.0.0 works instead.

About

A tiny file server for serving media

License:BSD 2-Clause "Simplified" License


Languages

Language:Go 66.6%Language:HTML 20.5%Language:Makefile 7.5%Language:JavaScript 4.5%Language:CSS 1.0%