Di recente in qualche modo sono finito su http://www.google.com/blank.html
Qualcuno ha idea del perché questa pagina esiste e per cosa potrebbe essere utile?
Di recente in qualche modo sono finito su http://www.google.com/blank.html
Qualcuno ha idea del perché questa pagina esiste e per cosa potrebbe essere utile?
Risposte:
Google ha alcuni URL progettati per scopi speciali, come:
http://www.google.com/blank.html
e
http://clients3.google.com/generate_204
Questi sono progettati per facilitare il rilevamento di "portali captive" : vale a dire, quando accedi a una rete wifi in un hotel o in un aeroporto, tu (o un processo automatizzato) puoi controllare queste pagine. Se restituiscono qualcosa di diverso dal risultato previsto (ovvero se blank.html
contiene qualcosa di diverso da una pagina vuota), il processo che lo controlla sa che qualcosa sta intercettando le tue richieste Web, molto probabilmente una pagina del portale che richiede un pagamento.
Esempio di utilizzo, ( WifiWatchdogStateMachine.java ):
private static final String DEFAULT_WALLED_GARDEN_URL =
"http://clients3.google.com/generate_204";
/**
* DNS based detection techniques do not work at all hotspots. The one sure
* way to check a walled garden is to see if a URL fetch on a known address
* fetches the data we expect
*/
private boolean isWalledGardenConnection() {
HttpURLConnection urlConnection = null;
try {
URL url = new URL(mWalledGardenUrl);
urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setInstanceFollowRedirects(false);
urlConnection.setConnectTimeout(WALLED_GARDEN_SOCKET_TIMEOUT_MS);
urlConnection.setReadTimeout(WALLED_GARDEN_SOCKET_TIMEOUT_MS);
urlConnection.setUseCaches(false);
urlConnection.getInputStream();
// We got a valid response, but not from the real google
return urlConnection.getResponseCode() != 204;
} catch (IOException e) {
if (DBG) {
log("Walled garden check - probably not a portal: exception " + e);
}
return false;
} finally {
if (urlConnection != null) {
urlConnection.disconnect();
}
}
}
Ulteriori discussioni al riguardo sono disponibili su questo thread .
Questo URL viene utilizzato da Google per molteplici scopi, non solo per facilitare il rilevamento di "portali captive".
Ho scoperto che viene utilizzato nel caso descritto di seguito:
Il referer di Google blank.html viene utilizzato quando un'immagine viene visualizzata nella SERP di ricerca Web e l'utente fa clic su tale immagine. questo fa sì che Google visualizzi una pagina di sfondo nero con una vista più grande della miniatura dell'immagine e questa pagina (non protetta, cioè HTTP non HTTPS) contiene del codice JavaScript / Ajax di Google che causa l'immagine originale (a grandezza naturale) di essere caricato dal browser, con un referer impostato su http://www.google.com/blank.html (o alcune varianti localizzate, ad esempio http://www.google.ca/blank.html ecc.).
Si noti che questo è diverso da ciò che accade se l'utente esegue una ricerca di immagini. in tal caso, l'immagine SERP è protetta (HTTPS) e quando l'utente fa clic su un'immagine in miniatura, google visualizza l'immagine ingrandita su sfondo nero e la pagina SERP dell'immagine contiene del codice JavaScript / Ajax di Google che causa l'originale (full-size) immagine che deve essere caricata dal browser, con un referer vuoto (no blank.html
).