Comments (15)
@angristan I'd like to eventually get to this, but haven't been able to find the time yet.
I tried to reproduce it again, and it seems that speedtest.net no longer uses ws
for latency test, and does not fail for me over forwardproxy
. Furthermore, I found another ws
test: http://demos.kaazing.com/echo/index.html and it seems to work fine for me.
So, I am unable to reproduce this issue anymore. Are you able to reproduce the issue @angristan @hangim ?
from forwardproxy.
ERR_NOT_IMPLEMENTED
seems to be chromium bug https://bugs.chromium.org/p/chromium/issues/detail?id=684681
from forwardproxy.
I just now do some little test.
In Chrome, without this plugin, ws
and wss
both works fine.
In Chrome, use this plugin, ws
meet ERR_NOT_IMPLEMENTED problem, can't work. And wss
works fine, as before mentioned.
In Firefox, use this plugin, everything works fine.
So the conclusion is maybe there some bug in Chrome?
I am not sure about this, I don't spend time to investigate ERR_NOT_IMPLEMENTED.
from forwardproxy.
Interesting. HTTP/2 proxy is supposed to be indifferent to target protocol, be it ws, wss, as the client is expected to just send standard CONNECT in both cases and then proceed with actual protocol.
Do you have any logs from the forwardproxy indicating what your client sends?
from forwardproxy.
How can I get these logs?
I try to start caddy with -log=stdout
, but the log is too less to solve this problem.
from forwardproxy.
I believe adding log {request} {response}
to Caddyfile should do the trick
from forwardproxy.
For ws
, cant work
***.***.***.*** - - [27/Jun/2018:03:35:18 +0000] "CONNECT / HTTP/2.0" 200 181
CONNECT echo.websocket.org:80 HTTP/2.0\r\nHost: echo.websocket.org:80\r\nProxy-Authorization: Basic ***password for basicauth***\r\nUser-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36\r\n\r\n -
For wss
, work normal
***.***.***.*** - - [27/Jun/2018:03:35:55 +0000] "CONNECT / HTTP/2.0" 200 7903
CONNECT echo.websocket.org:443 HTTP/2.0\r\nHost: echo.websocket.org:443\r\nProxy-Authorization: Basic ***password for basicauth***\r\nUser-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36\r\n\r\n -
Seems like some unexpected truncated, make the Chrome still wait for the response.
from forwardproxy.
Thanks, that's a very good report!
So, client with both ws and wss just sends CONNECT and receives 200 (success) response, indicating successful establishment of connection between client and ws/wss port. What happens next and why it gets truncated afterwards is unclear. Seemingly, it follows with HTTP ws handshake (-> Connection: Upgrade
) (<- Ok, sure, let's upgrade
) and some side closes.
Unfortunately, I don't have time to dig into this right now, perhaps later in the summer.
from forwardproxy.
Thanks for your attention.
BTW, I found this problem when I visit http://www.speedtest.net/
, which use ws
for latency test.
Maybe this information can help you debug.
from forwardproxy.
👋 hey @sergeyfrolov is this is your roadmap?
from forwardproxy.
@sergeyfrolov
Time flies, my second summer vacation almost end, LOL.
I haven't used this since last comment, maybe I will test it this weekend? If I don't forget it, procrastination is terrible.
from forwardproxy.
So this is a bit weird, http://demos.kaazing.com/echo/index.html seems to work:
However I get this error:
On Mastodon, which uses websockets for the streaming API (the timelines), I get many of these:
But it's not 100% broken. it seems there is a sever delay, sometimes the timelines will scroll sometimes they won't... 🤔
from forwardproxy.
In Firefox, websockets are fully working indeed...
from forwardproxy.
it seems there is a sever delay, sometimes the timelines will scroll sometimes they won't
Do you still see delays when you visit mastodon via forwardproxy using Firefox? I have a suspicion that the delay might be a separate issue, not caused by the Chromium bug.
from forwardproxy.
No, I don't see any delay.
from forwardproxy.
Related Issues (20)
- Should caddy2 be default branch? HOT 1
- Rationale of :443 in ":443, example.com" HOT 1
- Allow use of wildcard outside of `*.` prefix HOT 5
- Leverage caddy-l4 HOT 7
- Role of probe_resistance HOT 4
- [Feature request] Add custom DNS resolver
- Caddy shows "ResponseWriter doesn't implement http.Flusher" when enable access log and connect to a proxy server using HTTP/2 HOT 4
- Would using tokio improve performance? HOT 2
- Putty/WinScp HTTP Proxy
- insecure schemes are only allowed to localhost upstreams HOT 2
- Can I us this to add custom request headers? HOT 1
- Network Interface Feature example: fe0 in the dialcontext to be added. HOT 1
- xcaddy build --with github.com/caddyserver/forwardproxy failed with [FATAL] exit status 1 HOT 2
- Caddy2 support not only 443 port HOT 6
- The caddy2 version bahaves unexpectly. HOT 5
- where the "binaries" at? HOT 1
- "308 Permanent Redirect" HOT 2
- Download not available HOT 2
- Broken link in documentation pointing at blog article HOT 1
- Any change to support Cadddy log function ?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from forwardproxy.