2

I've got multiple websites (all of which being reverse-proxied via the same server) failing to properly load on one of my computers.

This particular case can be reproduced every single time, where a single JS file will stay stuck at "pending" in the chrome developer tool, despite Fiddler showing that the request has been completed with the correct headers and response.

I tried the following:

  • incognito tab
  • Firefox, edge, internet explorer
  • Removed all vlan's from my computer
  • completely removing and reinstalling the network drivers
  • Try a fresh windows user

When I try a different computer it works perfectly fine, despite both computers having the same browser extensions and same antivirus, as well as both running an up-to-date installation of Windows 10.

If I run Chrome via HTTP Toolkit (software tool for intercepting HTTP requests) everything works fine.

These are the headers the server responds with (as shown in fiddler):

HTTP/1.1 200 OK
Server: nginx
Date: Sun, 03 May 2020 13:22:52 GMT
Content-Type: application/javascript
Content-Length: 577367
Last-Modified: Wed, 15 Apr 2020 21:18:39 GMT
Connection: keep-alive
ETag: "5e977a2f-8cf57"
Accept-Ranges: bytes

What other steps can I try to debug and pinpoint this issue?

This file is a wireshark capture of my PC communicating with my webserver, the file failing to load is /js/main.bundle.js?v=2.2.3

This file is the chrome net export

16
  • Can you try with another user on this computer ? What happens after the "pending" state, the dev tools shows that the request is cancelled ?
    – Swisstone
    May 6, 2020 at 18:42
  • @Swisstone I let the page load for 10 minutes, then stopped the request. It went from (pending) to (cancelled) at that point. Also created a new windows user, and tried the same, but unfortunately with the same result.
    – xorinzor
    May 6, 2020 at 20:17
  • Can you create a client-side network trace with Wireshark?
    – Bernhard
    May 7, 2020 at 11:41
  • @Bernhard I added a link to the file to my post
    – xorinzor
    May 7, 2020 at 14:43
  • So, the Wireshark trace has ca. 0,5MB of main.bundle.js that is transferred within roughly 0.1 sec. Towards the end, there is a bit packet loss and retransmissions, but that's not looking too severe. Can you keep the trace running for a bit longer to see what it is doing? The transfer looks rather complete...
    – Bernhard
    May 7, 2020 at 14:49

1 Answer 1

1
+150

Summarizing the results from the discussion as answer here:

The Wireshark trace shows some retransmissions on the network layer, but ultimately it is transmitted successfully on the network. This is not a network connectivity problem.

Digging through the Chrome browsers' chrome://net-export/ logs, one can seee that the browser does not even finish reading the headers from the network:

t= 69 [st= 7] HTTP_TRANSACTION_SEND_REQUEST_HEADERS --> GET /js/main.bundle.js?v=2.2.3 HTTP/1.1
t= 69 [st= 7] -HTTP_TRANSACTION_SEND_REQUEST
t= 69 [st= 7] +HTTP_TRANSACTION_READ_HEADERS [dt=80452]
t= 69 [st= 7] +HTTP_STREAM_PARSER_READ_HEADERS [dt=80452]
t=80521 [st=80459] CANCELLED

This means that the source of the problem likely sits in an intercepting (proxy) software on the client system, as network traffic reaches the system, nut not the application. As the OP mentions Sophos AV, I assumed this is the source of the problem.

While inspecting process communication with procmon.exe, Sophos could be identified as the culprit by the OP.

1
  • Thank you so much for the help! I've submitted a ticket with Sophos to diagnose this further with them.
    – xorinzor
    May 8, 2020 at 15:12

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .