@@ -3410,13 +3410,25 @@ requests, in order to quickly initiate a fallback HTTP fetch.
3410
3410
request to <code> http://a.com</code> will be upgraded to <code> https://a.com</code> , but the fetch
3411
3411
will fail. A fallback request will be initiated to <code> http://a.com</code> .
3412
3412
3413
- <p id=example-https-upgrade-allowlist class=example><code> site.test</code> serves
3414
- <code> http://site.test</code> but refuses connections on <code> https://site.test</code> . Upon
3415
- first request and fallback to <code> http://site.test</code> , the user agent stores the hostname
3416
- in an allowlist with an expiration time of 7 days. In a future request, if <code> site.test</code>
3417
- is still in this allowlist, the user agent will not upgrade <code> http://site.test</code> to
3418
- <code> https://site.test</code> . The user agent will also set the new expiration time of the
3419
- allowlist entry for <code> site.test</code> to 7 days from now.
3413
+ <p id=example-https-upgrade-allowlist class=example><code> a.com</code> serves
3414
+ <code> http://a.com</code> but refuses connections on <code> https://a.com</code> . Upon
3415
+ first request and fallback to <code> http://a.com</code> , the user agent stores the hostname
3416
+ in an allowlist with an expiration time of 7 days. In a future request, if <code> a.com</code>
3417
+ is still in this allowlist, the user agent will not upgrade <code> http://a.com</code> to
3418
+ <code> https://a.com</code> . The user agent will also set the new expiration time of the
3419
+ allowlist entry for <code> a.com</code> to 7 days from now.
3420
+
3421
+ <p id=example-https-upgrade-ports class=example><code> a.com</code> serves
3422
+ <code> http://a.com:8080</code> . When a site is served from a non-default HTTP port, it's unlikely
3423
+ that the corresponding HTTPS URL is served from the default port either. Therefore, the user agent
3424
+ doesn't upgrade requests to <code> http://a.com:8080.</code>
3425
+
3426
+ <p id=example-https-upgrade-redirect-loop class=example><code> a.com</code> serves
3427
+ <code> http://a.com</code> and <code> https://a.com</code> . The latter redirects to the former.
3428
+ An eligible request to <code> http://a.com</code> will be upgraded to
3429
+ <code> https://a.com</code> and will be redirected back to <code> http://a.com</code> .
3430
+ The user agent will detect this as a redirect loop, treat it as a failed upgrade and initiate a
3431
+ fallback navigation to <code> http://a.com</code> .
3420
3432
3421
3433
3422
3434
@@ -4609,8 +4621,6 @@ steps:
4609
4621
4610
4622
<li><p> <a>Upgrade <var>request</var> to a potentially trustworthy URL, if appropriate</a> .
4611
4623
4612
- <li><p> Optionally, run <a>upgrade an HTTP request</a> algorithm on <var> request</var> .
4613
-
4614
4624
<li><p> <a>Upgrade a mixed content <var>request</var> to a potentially trustworthy URL, if appropriate</a> .
4615
4625
4616
4626
<li><p> If <a lt="block bad port">should <var>request</var> be blocked due to a bad port</a> ,
@@ -4660,6 +4670,8 @@ steps:
4660
4670
in the fetch algorithm and potentially unwind logic on discovering the need to change
4661
4671
<var> request</var> 's <a for=request>current URL</a>' s <a for=url>scheme</a> .
4662
4672
4673
+ <li><p> Optionally, run <a>upgrade an HTTP request</a> algorithm on <var> request</var> .
4674
+
4663
4675
<li><p> If <var> recursive</var> is false, then run the remaining steps <a>in parallel</a> .
4664
4676
4665
4677
<li>
0 commit comments