Bug 245247 - [SOUP] Too many redirections error loading PDF that works fine in Firefox
Summary: [SOUP] Too many redirections error loading PDF that works fine in Firefox
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit API (show other bugs)
Version: WebKit Nightly Build
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-09-15 14:57 PDT by Michael Catanzaro
Modified: 2022-09-21 21:24 PDT (History)
2 users (show)

See Also:


Attachments
network tab in Web Inspector (159.92 KB, image/png)
2022-09-21 01:09 PDT, Karl Dubost
no flags Details
GTK web inspector (49.03 KB, image/png)
2022-09-21 07:26 PDT, Michael Catanzaro
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Catanzaro 2022-09-15 14:57:46 PDT
Try loading:

http://www.owenscorning.com/NetworkShare/Roofing/10013915-Deck-Defense-Technical-White-Paper-October-2011.pdf

The load will fail with the error "cannot follow more than 20 redirections," but the exact same URL works fine in Firefox. I've also frequently seen this error when opening attachments on this Bugzilla. Suspect we're doing something weird....
Comment 1 Karl Dubost 2022-09-21 01:09:06 PDT
Created attachment 462489 [details]
network tab in Web Inspector

This is working for me on Safari Version 16.1 (18614.2.6.1.1) / macOS Ventura.
Does it still happening for you?

Do you have more details on error messages?
Comment 2 Michael Catanzaro 2022-09-21 07:25:22 PDT
(In reply to Karl Dubost from comment #1)
> Does it still happening for you?

Yes.

> Do you have more details on error messages?

"""
The precise error was: Load cannot follow more than 20 redirections
"""

It's coming from NetworkLoadChecker.cpp.

In the web inspector, I see only two resource loads attempted: about:blank, and network-error-symbolic.svg, which are both coming from the alternate HTML error page. It looks like not even a single request from the original load gets displayed in the web inspector, even though I checked the Preserve Logs option.
Comment 3 Michael Catanzaro 2022-09-21 07:26:00 PDT
Created attachment 462501 [details]
GTK web inspector
Comment 4 Michael Catanzaro 2022-09-21 08:44:33 PDT
Well I tried adding some debug prints to see what's going on, but it works perfectly fine in my local build of WebKit main. The failures I'm seeing are with Tech Preview on 2.37.91. I won't believe it's actually fixed until I see it fixed in Tech Preview, though. :/
Comment 5 Karl Dubost 2022-09-21 21:24:50 PDT
The url 
http://www.owenscorning.com/NetworkShare/Roofing/10013915-Deck-Defense-Technical-White-Paper-October-2011.pdf

and its request

```
GET /NetworkShare/Roofing/10013915-Deck-Defense-Technical-White-Paper-October-2011.pdf HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Pragma: no-cache
Cookie: ecm=user_id=0&isMembershipUser=0&site_id=&username=&new_site=/&unique_id=0&site_preview=0&langvalue=0&DefaultLanguage=1033&NavLanguage=1033&LastValidLanguageID=1033&DefaultCurrency=840&SiteCurrency=840&ContType=&UserCulture=1033&dm=origin.owenscorning.com&SiteLanguage=1033; EkAnalytics=0; EktGUID=8f14ec13-db71-4027-8d41-76e7b6b55579
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
Host: www.owenscorning.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.1 Safari/605.1.15
Accept-Language: en-US,en;q=0.9
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
```

which receives the response.


```
HTTP/1.1 200 OK
Content-Type: application/pdf
Last-Modified: Wed, 15 Jul 2020 15:30:34 GMT
Set-Cookie: ecm=user_id=0&isMembershipUser=0&site_id=&username=&new_site=/&unique_id=0&site_preview=0&langvalue=0&DefaultLanguage=1033&NavLanguage=1033&LastValidLanguageID=1033&DefaultCurrency=840&SiteCurrency=840&ContType=&UserCulture=1033&dm=origin.owenscorning.com&SiteLanguage=1033; path=/
Content-Encoding: gzip
Transfer-Encoding: Identity
Cache-Control: private
Date: Thu, 22 Sep 2022 04:18:29 GMT
Connection: keep-alive
ETag: "5217f7e1bc5ad61:0-gzip"
Vary: Accept-Encoding,User-Agent
Accept-Ranges: bytes
X-Powered-By: ASP.NET
Server: Microsoft-IIS/7.5
```

I wonder if its a loop in between http and https.