URL senza “http | https”

Ho appena appreso da un collega che omettendo la parte “http | https” di un URL in un collegamento farà sì che quell’URL usi qualunque schema della pagina in cui si trova.

Quindi, ad esempio, se la mia pagina è accessibile su http://www.example.com e ho un link (notare il “//” in primo piano):

Google 

Tale link verrà indirizzato a http:https://www.google.com .

Ma se accedo alla pagina https://www.example.com con lo stesso link, andrà su https:https://www.google.com

Volevo cercare online ulteriori informazioni a riguardo, ma ho problemi a pensare a una buona frase di ricerca. Se cerco “URL senza HTTP” le pagine restituite riguardano url con questo modulo: “www.example.com”, che non è quello che sto cercando.

Lo chiameresti un URL senza schema? Un URL senza protocollo?

Funziona in tutti i browser? L’ho testato su FF e IE 8 e ha funzionato in entrambi. Questa parte di uno standard, o dovrei testare più browser?

Protocollo url relativo.

Potresti ricevere avvisi di sicurezza insoliti in alcuni browser.

Vedi anche, URL relativi al protocollo di Wikipedia per una breve definizione.

Ad una volta, è stato raccomandato ; ma andando avanti, dovrebbe essere evitato . Vedi anche, Domanda StackOverflow, Perché usare URL relativi al protocollo?

Si chiama riferimento del percorso di rete (la parte mancante è chiamata scheme o protocol ) definita nella sezione 4.2 della RFC3986

4.2 Riferimento relativo

Un riferimento relativo sfrutta la syntax gerarchica (Sezione 1.2.3) per esprimere un riferimento URI relativo allo spazio dei nomi di un altro URI gerarchico.

  relative-ref = relative-part [ "?" query ] [ "#" fragment ] relative-part = "//" authority path-abempty / path-absolute / path-noscheme / path-empty 

L’URI a cui fa riferimento un riferimento relativo, noto anche come URI di destinazione, viene ottenuto applicando l’algoritmo di risoluzione di riferimento della Sezione 5.

Un riferimento relativo che inizia con due caratteri di barra è definito un riferimento di percorso di rete (enfasi mia); tali riferimenti sono usati raramente. Un riferimento relativo che inizia con un singolo carattere di barra viene definito un riferimento di percorso assoluto. Un riferimento relativo che non inizia con un carattere di barra viene definito riferimento di percorso relativo.

Un segmento di percorso che contiene un carattere di due punti (ad es. “Questo: quello”) non può essere utilizzato come primo segmento di un riferimento di percorso relativo, poiché sarebbe errato per un nome di schema. Tale segmento deve essere preceduto da un segmento di punti (ad es. “./This:that”) per creare un riferimento percorso relativo.