Simple Python HTTP(S) File Server
$ pip install pywebfs
- start http server sharing current directory listening on 0.0.0.0 port 8080
$ pywebfs
- Serve static files
- Download folder as zip file
- Quick filter files
- Keyboard navigation using arrows
- Search files recursively multiple word any order (disable feature with --nosearch)
- Search text in files recursively
- Basic Auth support (single user)
- HTTPS support
- HTTPS self-signed certificate generator
- Display owner/group/permissions (POSIX) (disable feature with --noperm)
- Can be started as a daemon (POSIX)
$ pywebfs --dir /mydir --title "my fileserver" --listen 0.0.0.0 --port 8080
$ pywebfs -d /mydir -t "my fileserver" -l 0.0.0.0 -p 8080
$ pywebfs --dir /mydir --user myuser [--password mypass]
$ pywebfs -d /mydir -u myuser [-P mypass]
Generated password is given if no --pasword
option
- Generate auto-signed certificate and start https server
$ pywebfs --dir /mydir --gencert
$ pywebfs -d /mydir --g
- Start https server using existing certificate
$ pywebfs --dir /mydir --cert /pathto/host.cert --key /pathto/host.key
$ pywebfs -d /mydir -c /pathto/host.cert -k /pathto/host.key
$ pywebfs start
$ pywebfs status
$ pywebfs stop
- log of server are stored in
~/.pywebfs/pwfs_<listen>:<port>.log
As built on python http.server, read in the python3 documentation:
Warning http.server is not recommended for production. It only implements basic security checks.