probonopd / zsync-curl

Partial/differential file download client over HTTP(S)
109 stars 23 forks source link

Get MirrorBrain to only forward to servers that support Content-Range #23

Closed probonopd closed 6 years ago

probonopd commented 7 years ago

With some of the download.opensuse.org mirrors, HTTP range requests and hence zsync do not work. In this case we get a clear message:

zsync received a data response (code 200) but this is not a partial content response zsync can only work with servers that support returning partial content from files. The person/entity creating this .zsync has tried to use a server that is not returning partial content. zsync cannot be used with this server. See http://zsync.moria.orc.uk/server-issues

Possible ways to solve this:

*   Trying 2001:67c:2178:8::13...
* TCP_NODELAY set
* Connected to download.opensuse.org (2001:67c:2178:8::13) port 80 (#0)
> GET /repositories/home:/probono/AppImage/QtQuickApp-latest-x86_64.AppImage.zsync HTTP/1.1
Host: download.opensuse.org
Accept: */*

< HTTP/1.1 302 Found
< Date: Sun, 28 May 2017 08:20:58 GMT
< Server: Apache/2.2.12 (Linux/SUSE)
< X-MirrorBrain-Mirror: anorien.csc.warwick.ac.uk
< X-MirrorBrain-Realm: region
< Link: <http://download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-latest-x86_64.AppImage.zsync.meta4>; rel=describedby; type="application/metalink4+xml"
< Link: <http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync>; rel=duplicate; pri=1; geo=gb
< Link: <http://ftp1.nluug.nl/os/Linux/distr/opensuse/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync>; rel=duplicate; pri=2; geo=nl
< Link: <http://ftp2.nluug.nl/os/Linux/distr/opensuse/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync>; rel=duplicate; pri=3; geo=nl
< Digest: MD5=L3Ho46G1PRJnz0UYYDCwNQ==
< Digest: SHA=56R/1LlBZWmBM/r1uWHvJJllJ0o=
< Digest: SHA-256=9WIl0VtswH7vyEaHqcDhkyhY/ks3XtcXl34BnDkg4ag=
< Location: http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync
< Content-Length: 436
< Content-Type: text/html; charset=iso-8859-1
< 
* Ignoring the response-body
* Connection #0 to host download.opensuse.org left intact
* Issue another request to this URL: 'http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync'
*   Trying 2001:470:1f09:1027:137:205:124:72...
* TCP_NODELAY set
* Connected to anorien.csc.warwick.ac.uk (2001:470:1f09:1027:137:205:124:72) port 80 (#1)
> GET /mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync HTTP/1.1
Host: anorien.csc.warwick.ac.uk
Accept: */*

< HTTP/1.1 200 OK
< Date: Sun, 28 May 2017 08:21:08 GMT
< Server: Apache/2.2.12 (Linux/SUSE)
< Last-Modified: Sat, 27 May 2017 10:26:57 GMT
< ETag: "b0f4-5507ee4b93e40"
< Accept-Ranges: bytes
< Content-Length: 45300
< X-Clacks-Overhead: GNU Terry Pratchett
< Content-Type: text/plain
< 
* Connection #1 to host anorien.csc.warwick.ac.uk left intact

### Leaving referer as http://download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-latest-x86_64.AppImage.zsync

### Setting redirected to http://download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-latest-x86_64.AppImage.zsync
No relevent local data found - I will be downloading the whole file. If that's not what you want, CTRL-C out. You should specify the local file is the old version of the file to download with -i (you might have to decompress it with gzip -d first). Or perhaps you just have no data that helps download the file

### fetch from QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage ### USE THE REDIRECTED URL FROM NOW ON
)
### make_url_absolute(http://download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-latest-x86_64.AppImage.zsync, QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage)
### Redirected payload URL: http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage

### make_url_absolute(http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.zsync, http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage)
downloading from http://anorien.csc.warwick.ac.uk/mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage:
*   Trying 2001:470:1f09:1027:137:205:124:72...
* TCP_NODELAY set
* Connected to anorien.csc.warwick.ac.uk (2001:470:1f09:1027:137:205:124:72) port 80 (#0)
> GET /mirrors/download.opensuse.org/repositories/home:/probono/AppImage/QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage HTTP/1.1
Host: anorien.csc.warwick.ac.uk
Range: bytes=0-13170687
Accept: */*

< HTTP/1.1 200 OK
< Date: Sun, 28 May 2017 08:21:09 GMT
< Server: Apache/2.2.12 (Linux/SUSE)
< Last-Modified: Sat, 27 May 2017 10:26:57 GMT
< ETag: "c8f498-5507ee4b93e40"
< Accept-Ranges: bytes
< Content-Length: 13169816
< X-Clacks-Overhead: GNU Terry Pratchett
< Content-Type: text/plain
< 

zsync received a data response (code 200) but this is not a partial content response
zsync can only work with servers that support returning partial content from files. The person/entity creating this .zsync has tried to use a server that is not returning partial content. zsync cannot be used with this server.
See http://zsync.moria.orc.uk/server-issues
Other error? -1
* Closing connection 0
failed to retrieve from QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage -1
Aborting, download available in QtQuickApp-1495317991.fce72f3.glibc2.2.5-x86_64.AppImage.part
TheAssassin commented 6 years ago

Please switch to zsync2, and report bugs there if you find some. Closing as this repository is no longer developed.