I am forking this repository and changing it to make it more suitable for my own usecases.
Updog is a replacement for Python's SimpleHTTPServer
.
It allows uploading and downloading via HTTP/S,
can use user supplied SSL certificates and use HTTP basic auth.
- Certificate files in .PEM-format (cert.pem and privkey.pem)
- direnv
- python3
Install:
git clone https://github.com/MeneerHeijpaal/updog.git
cd updog
direnv allow
curl -sSL https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python get-pip.py && rm get-pip.py
pip install -r requirements.txt
python updog.py [-d DIRECTORY] [-p PORT] [--password PASSWORD] [--ssl]
Argument | Description |
---|---|
-d DIRECTORY, --directory DIRECTORY | Root directory [Default=.] |
-p PORT, --port PORT | Port to serve [Default=9090] |
--password PASSWORD | Use a password to access the page. (No username) |
--ssl | Enable transport encryption via SSL |
--version | Show version |
-h, --help | Show help |
Serve from your current directory:
python updog.py
Serve from another directory:
python updog.py -d /another/directory
Serve from port 1234:
python updog.py -p 1234
Password protect the page:
python updog.py --password examplePassword123!
Please note: updog uses HTTP basic authentication. To login, you should leave the username blank and just enter the password in the password field.
Use an SSL connection:
python updog.py --ssl
Please note: (If you want to use --ssl
option, put the correct files in the /certs directory.
Otherwise you will get a error message.)
A special thank you to Nicholas Smith for designing the updog logo.