mirror of
https://github.com/rclone/rclone.git
synced 2024-11-26 10:13:52 +08:00
19a8b66cee
Create a full loop of documentation for rclone about, backends overview and individual backend pages. Discussion: https://github.com/rclone/rclone/pull/4774 relates Previously pull was requested, in part, under ref https://github.com/rclone/rclone/pull/4801 Notes: Introduce a tentative draft see-link format the end of sections to try rather than lots of in-para links. Update about.go incl link to list of backends not supporting about. In list of backends not supporting about, include link to about command reference. I appreciate there may be decisions to make going forward about whether command links should be code formatted, and using proper pretty url links, but I have fudged that for now. Update backend pages that do not support about with wording used previously for ftp - it is in passive voice but I can live with it. (my own wording and fault). The note is applied to a limitations section. If one does not already exist it is created (even if there are other limitations with their own sections)
199 lines
5.0 KiB
Markdown
199 lines
5.0 KiB
Markdown
---
|
|
title: "HTTP Remote"
|
|
description: "Read only remote for HTTP servers"
|
|
---
|
|
|
|
{{< icon "fa fa-globe" >}} HTTP
|
|
-------------------------------------------------
|
|
|
|
The HTTP remote is a read only remote for reading files of a
|
|
webserver. The webserver should provide file listings which rclone
|
|
will read and turn into a remote. This has been tested with common
|
|
webservers such as Apache/Nginx/Caddy and will likely work with file
|
|
listings from most web servers. (If it doesn't then please file an
|
|
issue, or send a pull request!)
|
|
|
|
Paths are specified as `remote:` or `remote:path/to/dir`.
|
|
|
|
Here is an example of how to make a remote called `remote`. First
|
|
run:
|
|
|
|
rclone config
|
|
|
|
This will guide you through an interactive setup process:
|
|
|
|
```
|
|
No remotes found - make a new one
|
|
n) New remote
|
|
s) Set configuration password
|
|
q) Quit config
|
|
n/s/q> n
|
|
name> remote
|
|
Type of storage to configure.
|
|
Choose a number from below, or type in your own value
|
|
[snip]
|
|
XX / http Connection
|
|
\ "http"
|
|
[snip]
|
|
Storage> http
|
|
URL of http host to connect to
|
|
Choose a number from below, or type in your own value
|
|
1 / Connect to example.com
|
|
\ "https://example.com"
|
|
url> https://beta.rclone.org
|
|
Remote config
|
|
--------------------
|
|
[remote]
|
|
url = https://beta.rclone.org
|
|
--------------------
|
|
y) Yes this is OK
|
|
e) Edit this remote
|
|
d) Delete this remote
|
|
y/e/d> y
|
|
Current remotes:
|
|
|
|
Name Type
|
|
==== ====
|
|
remote http
|
|
|
|
e) Edit existing remote
|
|
n) New remote
|
|
d) Delete remote
|
|
r) Rename remote
|
|
c) Copy remote
|
|
s) Set configuration password
|
|
q) Quit config
|
|
e/n/d/r/c/s/q> q
|
|
```
|
|
|
|
This remote is called `remote` and can now be used like this
|
|
|
|
See all the top level directories
|
|
|
|
rclone lsd remote:
|
|
|
|
List the contents of a directory
|
|
|
|
rclone ls remote:directory
|
|
|
|
Sync the remote `directory` to `/home/local/directory`, deleting any excess files.
|
|
|
|
rclone sync -i remote:directory /home/local/directory
|
|
|
|
### Read only ###
|
|
|
|
This remote is read only - you can't upload files to an HTTP server.
|
|
|
|
### Modified time ###
|
|
|
|
Most HTTP servers store time accurate to 1 second.
|
|
|
|
### Checksum ###
|
|
|
|
No checksums are stored.
|
|
|
|
### Usage without a config file ###
|
|
|
|
Since the http remote only has one config parameter it is easy to use
|
|
without a config file:
|
|
|
|
rclone lsd --http-url https://beta.rclone.org :http:
|
|
|
|
{{< rem autogenerated options start" - DO NOT EDIT - instead edit fs.RegInfo in backend/http/http.go then run make backenddocs" >}}
|
|
### Standard Options
|
|
|
|
Here are the standard options specific to http (http Connection).
|
|
|
|
#### --http-url
|
|
|
|
URL of http host to connect to
|
|
|
|
- Config: url
|
|
- Env Var: RCLONE_HTTP_URL
|
|
- Type: string
|
|
- Default: ""
|
|
- Examples:
|
|
- "https://example.com"
|
|
- Connect to example.com
|
|
- "https://user:pass@example.com"
|
|
- Connect to example.com using a username and password
|
|
|
|
### Advanced Options
|
|
|
|
Here are the advanced options specific to http (http Connection).
|
|
|
|
#### --http-headers
|
|
|
|
Set HTTP headers for all transactions
|
|
|
|
Use this to set additional HTTP headers for all transactions
|
|
|
|
The input format is comma separated list of key,value pairs. Standard
|
|
[CSV encoding](https://godoc.org/encoding/csv) may be used.
|
|
|
|
For example to set a Cookie use 'Cookie,name=value', or '"Cookie","name=value"'.
|
|
|
|
You can set multiple headers, e.g. '"Cookie","name=value","Authorization","xxx"'.
|
|
|
|
|
|
- Config: headers
|
|
- Env Var: RCLONE_HTTP_HEADERS
|
|
- Type: CommaSepList
|
|
- Default:
|
|
|
|
#### --http-no-slash
|
|
|
|
Set this if the site doesn't end directories with /
|
|
|
|
Use this if your target website does not use / on the end of
|
|
directories.
|
|
|
|
A / on the end of a path is how rclone normally tells the difference
|
|
between files and directories. If this flag is set, then rclone will
|
|
treat all files with Content-Type: text/html as directories and read
|
|
URLs from them rather than downloading them.
|
|
|
|
Note that this may cause rclone to confuse genuine HTML files with
|
|
directories.
|
|
|
|
- Config: no_slash
|
|
- Env Var: RCLONE_HTTP_NO_SLASH
|
|
- Type: bool
|
|
- Default: false
|
|
|
|
#### --http-no-head
|
|
|
|
Don't use HEAD requests to find file sizes in dir listing
|
|
|
|
If your site is being very slow to load then you can try this option.
|
|
Normally rclone does a HEAD request for each potential file in a
|
|
directory listing to:
|
|
|
|
- find its size
|
|
- check it really exists
|
|
- check to see if it is a directory
|
|
|
|
If you set this option, rclone will not do the HEAD request. This will mean
|
|
|
|
- directory listings are much quicker
|
|
- rclone won't have the times or sizes of any files
|
|
- some files that don't exist may be in the listing
|
|
|
|
|
|
- Config: no_head
|
|
- Env Var: RCLONE_HTTP_NO_HEAD
|
|
- Type: bool
|
|
- Default: false
|
|
|
|
{{< rem autogenerated options stop >}}
|
|
### Limitations
|
|
|
|
`rclone about` is not supported by the HTTP backend. Backends without
|
|
this capability cannot determine free space for an rclone mount or
|
|
use policy `mfs` (most free space) as a member of an rclone union
|
|
remote.
|
|
|
|
See [List of backends that do not support rclone about](https://rclone.org/overview/#optional-features)
|
|
See [rclone about](https://rclone.org/commands/rclone_about/)
|
|
|