Skip to main content

Simple Python HTTP File Server

Project description

Pypi version example Licence Python versions

pywebfs

Simple Python HTTP(S) File Server

Install

$ pip install pywebfs

Quick start

  • start http server sharing current directory listening on 0.0.0.0 port 8080
$ pywebfs
  • Browse/Download/Search files using browser http://<yourserver>:8080 image

  • search text in files (grep) image

features

  • Serve static files
  • Download folder as zip file
  • Filter files
  • 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)

Customize server

$ 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

Basic auth user/password

$ pywebfs --dir /mydir --user myuser [--password mypass]
$ pywebfs -d /mydir -u myuser [-P mypass]

Generated password is given if no --pasword option

HTTPS server

  • 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

Launch server as a daemon (Linux)

$ pywebfs start
$ pywebfs status
$ pywebfs stop
  • log of server are stored in ~/.pywebfs/pwfs_<listen>:<port>.log

Disclaimer

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.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pywebfs-0.8.2.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pywebfs-0.8.2-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file pywebfs-0.8.2.tar.gz.

File metadata

  • Download URL: pywebfs-0.8.2.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for pywebfs-0.8.2.tar.gz
Algorithm Hash digest
SHA256 2853972a479c99ec9d2ec0a5bd2b2ef33e47af44ce2da19c03707deb8684295d
MD5 67184d439a37072c3329a54e5a71f047
BLAKE2b-256 ae3cbf40554cd69eed45ec36592e0bf3871c50fe1986a18cbbdb0accadedae49

See more details on using hashes here.

File details

Details for the file pywebfs-0.8.2-py3-none-any.whl.

File metadata

  • Download URL: pywebfs-0.8.2-py3-none-any.whl
  • Upload date:
  • Size: 18.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for pywebfs-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 acb5b7724756bc76e7b517a20ecbdbfea625cb7f03c2e89e52ec55668c48f739
MD5 079c6d63d4670484428f2035bd71d7c1
BLAKE2b-256 7602aa2ba43bdf9fda6f0ded6c4d8631a27b9b821b8e0dda150debcb4b8d04c4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page