Share folder via http with upload
Multiple files upload to current showed folder
In extended mode you can doing more
go install github.com/western/http-here@latest
linux / amd64
# go to your home bin
cd ~/bin
# download and unpack
wget https://github.com/western/http-here/releases/download/v1.9.2/http-here.gz
gzip -d http-here.gz
chmod +x http-here
http-here /tmp
or
http-here --port 7999 /path/to/folder
http-here --extend-mode /tmp
App will change main list view to table. And you can operate with files - delete, move, copy
Below you see display width more than 992 pix (1), less than (2) and mobile window (3):
Important
During group operations COPY or MOVE all target files/folders will be rewrite
For Thumbnails support read below
Important
It is recommend for work on public network interfaces
every time when you start, you get a list of random accounts
http-here --basic .
or only one basic auth specific user
http-here --user loginXX --password MugMf7AHs .
http-here --tls --basic /path/to/you
read for TLS Support below
http-here --upload-disable --folder-make-disable /tmp/fold
Prefork help to handle with multiple heavy query (big image gallery as example)
http-here --prefork --extend-mode /tmp
If you run --prepare-thumbnails one time you maybe not need prefork
http-here --prepare-thumbnails --extend-mode /tmp
You can online edit doc files html|rtf|doc|docx|odt
as office files.
Or html|txt|js|css|md
formats as source code.
You need libreoffice
package for office files.
Office files follow this flow: file.doc => file.html, edit => file.doc
Important
Be careful. If you download .crypt
file with WRONG password, it file will be contain MESS of bytes
Your server need package openssl
. It will be use openssl aes-256-cbc
http-here --extend-mode --crypt /tmp
Then, set your passcode to the form. The passcode store on the form between requests and you not need input it every time (if you clear it server will not use openssl).
During the process of uploading, your files will be encrypt and their EXT change to .crypt
When files lying on your server, their data is crypted.
If you need decrypt any .crypt
flles, set your passcode, and click on file. During download this file, it will be decrypt on the fly.
http-here --extend-mode --crypt /tmp
- if you set
--crypt
arg on cmd - if you set passcode (pass code set by form)
http-here --extend-mode --crypt /tmp
- if you set
--crypt
arg on cmd - if filename contain
.crypt
extension - if you set right passcode (pass code set by form)
http-here /tmp
- if filename contain
.crypt
extension - if you get file with
code
param:/fold3/file.jpg.crypt?code=YOUR_PASS_HERE
Caution
Be careful, if you start this App on public network interface, anybody can work with it
Caution
Always run this app only under unprivileged common user
- If you run application under some User, this user should be have privileges to write current folder
- For start HTTPS server you need
easyrsa
linux package - When you start server with
--tls
option, all keys generate automatically
http-here --tls .
- Server use self signed certs, generated at first time. Thus you need approve this connection on your clients.
If you put inside folder file index.html
, it will be return as context
For document preview you need libreoffice
package. Formats pdf, rtf, doc, docx, xls, xlsx, odt, ods
libreoffice
- for thumbnails, for doc files online editeasyrsa
- package for certs buildopenssl
- encrypt file support
https://github.com/western/http-here/issues
- add --log and --tee args for save output (or database?)
- change background actions for FS drivers (i need one abstraction layer)
- problem: how decide to run md5sum inside some folder
- database, seperate branch without?
- tests
- add source code editor for
html|txt|js|css|md
- enable preview for
rtf|doc|docx|odt
- online editor for
html|rtf|doc|docx|odt
- top buttons operations
- api/copy
- api/rename
- "edit" still planning
- "share" still planning
- add file crypt support
need openssl package
- add experimental preview office files
you need libreoffice package