[Cyberduck-trac] [Cyberduck] #11127: Web URL function in bookmark not working for B2

Cyberduck trac at cyberduck.io
Mon Aug 3 00:40:22 UTC 2020

#11127: Web URL function in bookmark not working for B2
    Reporter:  heypete  |      Owner:
        Type:  defect   |     Status:  new
    Priority:  normal   |  Milestone:
   Component:  core     |    Version:  7.4.1
    Severity:  minor    |   Keywords:
Architecture:  Intel    |   Platform:  Windows 10
 Short description of bug: The Web URL feature does not work for files
 stored on Backblaze B2.

 Steps to reproduce:
 1. Configure a bookmark to connect to Backblaze B2.
 - Enter a URL into the More Options --> Web URL field that is a DNS CNAME
 to the applicable B2 file server. (e.g., https://files2.heypete.com, since
 files2.heypete.com is a CNAME to f001.backblazeb2.com)
 - Enter "/file" into the Path field.
 2. Use the bookmark to connect to B2, create a bucket, and upload a file.
 3. Right-click on the file and select "Open URL", "Copy URL", or "Share".
 4. Observe that only the https://f001.backblazeb2.com/file/path-to-file
 URL is displayed. The Web URL entered in step 1 is ignored.

 Confirm that behavior is unexpected and B2-specific:
 1. Perform step 1 as above, only configure the bookmark to connect to an
 SFTP server.
 2. Perform steps 2 and 3 as above.
 3. Note that the Web URL and path specified in step 1 are present and
 available to open or copy.

 Additional details:
 I have a B2 bucket with files I wish to share with others. In the file
 listing in Cyberduck I can right-click the file I wish to share and select
 "Copy URL" or "Open URL" to get the public-facing URL for that file. If
 the file is in a private bucket, I can select "Share" and get a URL with
 an authorization token to allow access to the file. This works as
 expected, and produces a URL in the form https://f001.backblazeb2.com/file
 /bucket-name/filename.ext, where f001.backblazeb2.com is the file server
 my account is assigned, /file/ is a mandatory part of the B2 URL, /bucket-
 name/ is the name of the B2 bucket I created, and filename.ext is the name
 and extension of the file.

 In order to utilize the Backblaze-Cloudflare partnership that allows for
 free egress costs (see https://www.cloudflare.com/bandwidth-
 alliance/backblaze/ and https://help.backblaze.com/hc/en-
 us/articles/217666928-Using-Backblaze-B2-with-the-Cloudflare-CDN), I have
 setup a DNS CNAME on my Cloudflare-hosted domain to point at the relevant
 Backblaze file server. In my case, files2.heypete.com is a CNAME for
 f001.backblazeb2.com. If I manually take the URL provided by the Copy URL
 function above and replace https://f001.backblazeb2.com/file/[path-to-
 file] with https://files2.heypete.com/file/[path-to-file], everything
 works as expected.

 In my Cyberduck bookmark for my B2 bucket, I select "More Options", add
 "/file" to the Path field and "https://files2.heypete.com" to the Web URL
 field and save the bookmark. However, when I use that bookmark to connect
 and use the Copy URL function, the only URL displayed is the
 https://f001.backblazeb2.com/file/[path-to-file] one.

 Thank you!

Ticket URL: <https://trac.cyberduck.io/ticket/11127>
Cyberduck <https://cyberduck.io>
Libre FTP, SFTP, WebDAV, S3 & OpenStack Swift browser for Mac and Windows

More information about the Cyberduck-trac mailing list