Checks send no Referer header, so Hetzner answers (closes #191)
check / check (push) Waiting to run
check / check (push) Waiting to run
The Hetzner speed-test servers close the connection without an answer when the request has a Referer header. The browser sends one unless the page comes with the image's Referrer-Policy: no-referrer header, which a static host and make dev do not send. Each check now sets referrerPolicy: "no-referrer". Model: opus-5-5
This commit is contained in:
@@ -413,10 +413,12 @@ Local hosts are tracked separately from WAN stats.
|
||||
|
||||
### Latency measurement
|
||||
|
||||
GET requests to each target's URL as written, with `mode: 'no-cors'` and
|
||||
`cache: 'no-store'`, timed with `performance.now()`. No query string is added:
|
||||
the Hetzner speed-test servers close the connection without an answer when the
|
||||
URL has one, and `no-store` keeps the browser's cache out of the measurement.
|
||||
GET requests to each target's URL as written, with `mode: 'no-cors'`,
|
||||
`cache: 'no-store'` and `referrerPolicy: 'no-referrer'`, timed with
|
||||
`performance.now()`. The Hetzner speed-test servers close the connection without
|
||||
an answer when the URL has a query string or the request has a `Referer` header.
|
||||
So no query string is added, and no `Referer` header is sent, wherever the page
|
||||
is served from. `no-store` keeps the browser's cache out of the measurement.
|
||||
Each check times out after 80% of the refresh interval (24 seconds at 30
|
||||
seconds) and is then recorded as a timeout, so a round's checks have all
|
||||
finished before the next round is due. When no WAN host answers, a recovery
|
||||
|
||||
Reference in New Issue
Block a user