Find available PDF not working with socks proxy

I use Zotero Connector with chrome, and noticed that papers can be added to my collections, but the corresponding PDFs are not found/downloaded when socks proxy is turned on on my system. If the proxy is turned off, fetching works as usual.

Per this support article https://www.zotero.org/support/kb/connection_error, Zotero uses system proxy settings by default. I've confirmed this config in my Zotero and also that my browser (chrome) uses system settings and can open/download the PDF with proxy on. So it sounds like it *should* work with Zotero as well.

From Zotero logs, it looks likes some network requests went through but some didn't:

(3)(+0000001): HTTP GET https://arxiv.org/abs/2105.08209 succeeded with 200
...

(1)(+0000066): HTTP POST https://services.zotero.org/oa/search failed with status code 0
...
(3)(+0079911): Connecting to streaming server at wss://stream.zotero.org/

(3)(+0000051): WebSocket error

------

Could you suggest how to make finding/fetching PDF work with the proxy?
  • Can you provide a Debug ID for Zotero startup through reproducing this, using the "Restart with Logging Enabled…" option?
  • D341074210 - I've tried adding a new paper + manually finding available PDF.

    I also noticed that submitting the debug output failed when proxy was on, and succeeded after I turned it off.
  • That's not for Zotero startup.
  • My bad. Here is another one with startup: D1912672215.
  • edited July 11, 2023
    (3)(+0000002): Proxy required for https://zoteroproxycheck.s3.amazonaws.com/test -- making HEAD request to trigger auth prompt

    (3)(+0000000): HTTP HEAD https://zoteroproxycheck.s3.amazonaws.com/test

    (1)(+0000001): HTTP HEAD https://zoteroproxycheck.s3.amazonaws.com/test failed with status code 0

    (2)(+0000002): Channel status was 2152398861 (NS_ERROR_CONNECTION_REFUSED)

    (1)(+0000000): Error connecting to proxy -- proxied requests may not work
    (3)(+0000001): HTTP GET https://api.zotero.org/keys/current

    (1)(+0000013): HTTP GET https://api.zotero.org/keys/current failed with status code 0

    (2)(+0000000): Channel status was 2152398861 (NS_ERROR_CONNECTION_REFUSED)

    (1)(+0000000): Error: Error connecting to server. Check your Internet connection.
    Something about your proxy configuration is wrong. All of Zotero's network requests are failing when you have the proxy enabled.

    I'm afraid you'll need to debug this yourself with the information from Connection Error.
  • For SOCKS in particular, one thing you can try is configuring the proxy settings manually as one would for Firefox and making sure that network.proxy.socks_remote_dns is set to true. I'm not sure how DNS is handled when it uses the system settings with a SOCKS proxy.
  • Thanks for looking into it and for the suggestions. Yeah I've played with the proxy configs, the dns one and manually setting socks/http proxies, but the issue is still there. This seems to be related to how socks works (CURLing also behaves differently than w/o the proxy turned on). My network knowledge is limited, I'll work around it for now and look at it later.
  • Looks like using network.proxy.type = 1 (manual) and manually setting the socks proxy makes it work.

    The same behavior for Firefox, where the default is to use system proxy, but all connections failed. After manually configuring https or socks, it works. (Chrome doesn't seem to have this issue.) This thread seems to be relevant https://discussion.fedoraproject.org/t/firefox-doesnt-follow-system-proxy-settings/82375/3. Is there something similar we could for Zotero?
Sign In or Register to comment.