krz/skunky-art

Alternative privacy frontend for DeviantArt.

clone: git clone https://gitbay.org/krz/skunky-art.git

v1.3.6: SETUP.md · raw

 1# Units
 2Maximum file size in megabytes, requires numeric value.<br>
 3Time units:
 4* `i` — minutes
 5* `h` — hours
 6* `w` — weeks
 7* `m` — months
 8* `y` — years
 9
10# Config
11* `listen` — IP and port to listen on in the following form: ip:port
12* `uri` — Instance URI. Example: `"uri":"/art/"` -> https://skunky.ebloid.ru/art/
13* `cache` — Caching system; default is off.
14  * `enabled` — Caching system state, requires boolean value
15  * `path` — Path to cache directory, requires absolute filesystem path
16  * `lifetime` — Cached file life time, requires numeric value, followed by multiplicative suffix (see Time Units for details)
17  * `max-size` — Maximum file size in megabytes
18  * `update-interval` — Automatic rotation interval
19* `static-path` — This setting determines path to static, which will be copied to RAM when SkunkyArt is started. Useless if you're use binary compiled with 'embed' tag.
20* `download-proxy` — Outbound proxy used when fetching media from DeviantArt's
21  CDN. Leave empty (`""`) unless you actually run a proxy: if this points at
22  something that isn't listening, every image 502s while pages still render,
23  because only media fetches go through it. Inside a container `127.0.0.1` is
24  the container itself, so a host-side proxy must be addressed by service name
25  or host IP, not loopback.
26* `user-agent` — String, which SkunkyArt uses as UA
27* `proxy` — Serve media through this instance instead of linking straight to
28  DeviantArt's CDN. Required by `cache`; when off, clients fetch images from
29  wixmp directly.
30* `nsfw` — Show mature content.
31
32# Setting up reverse proxy
33Pretty much business as usual, except for the [`X-Forwarded-Proto`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto) header setting.
34
35Nginx example configuration:
36```apache
37server {
38    listen 443 ssl;
39    server_name skunky.example.com;
40    
41    # In case of subdomain, use / instend of ((BASE_URL))
42    location ((BASE_URL)) {
43        proxy_set_header X-Forwarded-Proto $scheme;
44        proxy_set_header Host $host;
45        proxy_http_version 1.1;
46        proxy_pass http://((IP)):((PORT));
47    }
48}
49```