Nolan Woods
b30731c9d0
lib/http: Add auth to http service
...
Fixes https://github.com/rclone/rclone/issues/5620
2021-10-01 15:51:48 +01:00
Cnly
bc74f0621e
http: fix serve http exits directly after starting
2021-07-25 14:06:43 +01:00
Nolan Woods
ab7dfe0c87
http: clean up Bind to better use middleware
2021-05-02 11:31:01 +01:00
Nolan Woods
5d2e327b6f
http: Replace httplib with lib/http
2021-04-28 22:54:15 +01:00
Nolan Woods
002d323c94
lib/http: Move HTTP object serialization logic to lib/http
2021-04-28 22:54:15 +01:00
Nick Craig-Wood
629c0d0f65
serve http: fix serving files of unknown length
...
Before this change serving files of unknown length were always
returned as 0 length files.
This change serves them correctly, but does not support Range:
requests on them.
See: https://forum.rclone.org/t/serve-http-behavior-when-the-size-is-unknown/21319
2020-12-27 22:01:41 +00:00
Nick Craig-Wood
1fb6ad700f
accounting: add context.Context #3257 #4685
2020-11-09 18:05:54 +00:00
Josh Soref
e4a87f772f
docs: spelling: e.g.
...
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
2020-10-28 18:16:23 +00:00
calisro
c80b6d96dd
http: improved directory listing with new template from Caddy project
...
This includes a new directory listing template which was originally
from the Caddy project (used with permission and copyright attribution).
This is used whenever we serve directory listings so `rclone serve
http`, `rclone serve webdav` and `rclone rcd --rc-serve`
This also modifies the tests so they work with the original template which
is easier to debug.
2020-05-08 16:15:21 +01:00
Nick Craig-Wood
bdc91eda0f
serve http: add Last-Modified headers to files and directories
...
This means that using `rclone serve http` preserves modification times
when used with the http backend.
Fixes #4201
2020-05-05 09:41:08 +01:00
calistri
4362ca7bb9
serve http, serve webdav: Added a --template flag for user defined markup
2020-05-04 17:36:31 +00:00
Nick Craig-Wood
bd61eb89bc
serve http/webdav/restic/rc: rename --prefix flag to --baseurl #3398
...
The name baseurl is widely accepted for this feature so I decided to
rename it before it made it into a stable release.
2019-08-24 09:10:50 +01:00
Nick Craig-Wood
02eb747d71
serve http/webdav/restic: implement --prefix - fixes #3398
...
--prefix enables the servers to serve from a non root prefix. This
enables easier proxying.
2019-08-06 10:30:48 +01:00
Nick Craig-Wood
57d5de6fba
build: fix up package paths after repo move
...
git grep -l github.com/ncw/rclone | xargs -d'\n' perl -i~ -lpe 's|github.com/ncw/rclone|github.com/rclone/rclone|g'
goimports -w `find . -name \*.go`
2019-07-28 18:47:38 +01:00
Aleksandar Jankovic
8243ff8bc8
accounting: isolate stats to groups
...
Introduce stats groups that will isolate accounting for logically
different transferring operations. That way multiple accounting
operations can be done in parallel without interfering with each other
stats.
Using groups is optional. There is dedicated global stats that will be
used by default if no group is specified. This is operating mode for CLI
usage which is just fire and forget operation.
For running rclone as rc http server each request will create it's own
group. Also there is an option to specify your own group.
2019-07-28 14:48:19 +01:00
Aleksandar Jankovic
be0464f5f1
accounting: change stats interface
...
This is done to make clear ownership over accounting object and prepare
for removing global stats object.
Stats elapsed time calculation has been altered to account for actual
transfer time instead of stats creation time.
2019-07-28 14:48:19 +01:00
Aleksandar Jankovic
f78cd1e043
Add context propagation to rclone
...
- Change rclone/fs interfaces to accept context.Context
- Update interface implementations to use context.Context
- Change top level usage to propagate context to lover level functions
Context propagation is needed for stopping transfers and passing other
request-scoped values.
2019-06-19 11:59:46 +01:00
Gary Kim
6e8e620e71
serve webdav: fix serveDir not being updated with changes from webdav
...
Fixes an issue where changes such as renaming done using webdav
would not be reflected in the html directory listing
2019-06-15 10:00:46 +01:00
Gary Kim
622e0d19ce
serve webdav: combine serve webdav and serve http
2019-06-15 10:00:46 +01:00
Jay
082a7065b1
Use vfsgen for static HTML templates
2018-12-26 15:07:21 +00:00
Nick Craig-Wood
370c218c63
cmd/http: factor directory serving routines into httplib/serve and write tests
2018-11-04 12:46:44 +00:00
Nick Craig-Wood
bb5637d46a
serve http, webdav, restic: ensure rclone exits if the port is in use
2018-11-02 17:32:20 +00:00
Matt Holt
e13f65b953
serve restic: Print actual listener address
2018-04-04 14:56:26 +01:00
Nick Craig-Wood
358c1fbac9
serve http/webdav: support SSL/TLS
2018-02-16 18:28:10 +00:00
Nick Craig-Wood
5530662ccc
serve http/webdav: factor common http server creation to httplib
2018-02-16 17:48:20 +00:00
Nick Craig-Wood
517bdc719b
vfs: make specialized file Open functions private
2018-01-19 11:46:01 +00:00
Nick Craig-Wood
11da2a6c9b
Break the fs package up into smaller parts.
...
The purpose of this is to make it easier to maintain and eventually to
allow the rclone backends to be re-used in other projects without
having to use the rclone configuration system.
The new code layout is documented in CONTRIBUTING.
2018-01-15 17:51:14 +00:00
Nick Craig-Wood
60afda007b
Move dircache, oauthutil, rest and pacer modules into lib
2018-01-12 17:07:38 +00:00
Nick Craig-Wood
65618afd8c
serve/http: fix serving files with : in - fixes #1939
2018-01-05 17:25:05 +00:00
Nick Craig-Wood
c560017934
vfs: add Path method to Node and use it to stop reading nil DirEntry
...
All DirEntry calls now have been checked for nil or converted to use Path.
2017-11-20 12:46:22 +00:00
Nick Craig-Wood
05a1e1532b
vfs,mount,cmount,serve: Add documentation for vfs caching modes
2017-11-20 12:46:21 +00:00
ishuah
aec2265be0
rclone: implement exit codes - #1136
2017-11-15 17:48:37 +03:00
Nick Craig-Wood
16e16bc220
serve http: use vfs to cache the directories and support Range header
2017-11-04 10:24:11 +00:00
Nick Craig-Wood
96665c16cb
serve http: make it compile on go1.6 and go1.7
2017-10-26 21:52:29 +01:00
Nick Craig-Wood
cd146415d1
serve http: error if Range supplied (not supported yet)
...
Also add Server header
2017-10-24 23:18:36 +01:00
Nick Craig-Wood
2740c965c0
serve http: Fix timeouts
2017-10-24 23:07:46 +01:00
Nick Craig-Wood
6669165b6b
serve http command to serve a remote over HTTP
...
This implements a basic webserver to serve an rclone remote over HTTP.
It also sets up the framework for adding more types of server later.
2017-10-24 13:25:49 +01:00