Skip to content

Commit 043386a

Browse files
committed
Add custom port and redirect examples, move the upgrade step
1 parent 60a6b1a commit 043386a

File tree

1 file changed

+21
-9
lines changed

1 file changed

+21
-9
lines changed

fetch.bs

+21-9
Original file line numberDiff line numberDiff line change
@@ -3390,13 +3390,25 @@ requests, in order to quickly initiate a fallback HTTP fetch.
33903390
request to <code>http://a.com</code> will be upgraded to <code>https://a.com</code>, but the fetch
33913391
will fail. A fallback request will be initiated to <code>http://a.com</code>.
33923392

3393-
<p id=example-https-upgrade-allowlist class=example><code>site.test</code> serves
3394-
<code>http://site.test</code> but refuses connections on <code>https://site.test</code>. Upon
3395-
first request and fallback to <code>http://site.test</code>, the user agent stores the hostname
3396-
in an allowlist with an expiration time of 7 days. In a future request, if <code>site.test</code>
3397-
is still in this allowlist, the user agent will not upgrade <code>http://site.test</code> to
3398-
<code>https://site.test</code>. The user agent will also set the new expiration time of the
3399-
allowlist entry for <code>site.test</code> to 7 days from now.
3393+
<p id=example-https-upgrade-allowlist class=example><code>a.com</code> serves
3394+
<code>http://a.com</code> but refuses connections on <code>https://a.com</code>. Upon
3395+
first request and fallback to <code>http://a.com</code>, the user agent stores the hostname
3396+
in an allowlist with an expiration time of 7 days. In a future request, if <code>a.com</code>
3397+
is still in this allowlist, the user agent will not upgrade <code>http://a.com</code> to
3398+
<code>https://a.com</code>. The user agent will also set the new expiration time of the
3399+
allowlist entry for <code>a.com</code> to 7 days from now.
3400+
3401+
<p id=example-https-upgrade-ports class=example><code>a.com</code> serves
3402+
<code>http://a.com:8080</code>. When a site is served from a non-default HTTP port, it's unlikely
3403+
that the corresponding HTTPS URL is served from the default port either. Therefore, the user agent
3404+
doesn't upgrade requests to <code>http://a.com:8080.</code>
3405+
3406+
<p id=example-https-upgrade-redirect-loop class=example><code>a.com</code> serves
3407+
<code>http://a.com</code> and <code>https://a.com</code>. The latter redirects to the former.
3408+
An eligible request to <code>http://a.com</code> will be upgraded to
3409+
<code>https://a.com</code> and will be redirected back to <code>http://a.com</code>.
3410+
The user agent will detect this as a redirect loop, treat it as a failed upgrade and initiate a
3411+
fallback navigation to <code>http://a.com</code>.
34003412

34013413

34023414

@@ -4586,8 +4598,6 @@ steps:
45864598

45874599
<li><p><a>Upgrade <var>request</var> to a potentially trustworthy URL, if appropriate</a>.
45884600

4589-
<li><p>Optionally, run <a>upgrade an HTTP request</a> algorithm on <var>request</var>.
4590-
45914601
<li><p><a>Upgrade a mixed content <var>request</var> to a potentially trustworthy URL, if appropriate</a>.
45924602

45934603
<li><p>If <a lt="block bad port">should <var>request</var> be blocked due to a bad port</a>,
@@ -4635,6 +4645,8 @@ steps:
46354645
in the fetch algorithm and potentially unwind logic on discovering the need to change
46364646
<var>request</var>'s <a for=request>current URL</a>'s <a for=url>scheme</a>.
46374647

4648+
<li><p>Optionally, run <a>upgrade an HTTP request</a> algorithm on <var>request</var>.
4649+
46384650
<li><p>If <var>recursive</var> is false, then run the remaining steps <a>in parallel</a>.
46394651

46404652
<li>

0 commit comments

Comments
 (0)