Transfer-more
Transfer More is a minimalist open-source upload http server to store and share files temporarily, written in Crystal, and based on Kemal [1].
Installation
Install the transfer-moreAUR package. It only requires crystal and shards in order to compile the initial binary, because pre-built binaries are not provided. There is not 3rd database or service dependencies.
Running
Starting
Run the transfer-more
binary manually from a terminal.
Autostarting
TODO
System service
TODO
User service
TODO
Configuration
Parameters
$ transfer-more --port 3000 --host 0.0.0.0
Environment variables
-
TRANSFER_SSL_ENABLED
: iftrue
you should see this page -
TRANSFER_BASE_STORAGE
: the base path where the upload should be stored -
TRANSFER_SECURE_SIZE
: the size of the salt (minimum 1) -
TRANSFER_STORAGE_DAYS
: default 7, number of days minimum to keep the files stored -
TRANSFER_TIME_FORMAT
: default%y%m%d%H
, a part of the URL to access the files (also the path in the filesystem)
Behind Nginx
You could configure your nginx with /etc/nginx/servers-enabled/transfer-more.conf
:
server { listen 443 ssl; server_name up.sceptique.eu; client_max_body_size 1G; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location / { proxy_pass http://localhost:3000; } }
See also
- https://git.sceptique.eu/Sceptique/transfer_more#usage to get the last version of the documentation.
- https://kemalcr.com/guide/ to understand how the web framework behind transfer-more works.