Fino ad ora è stato affermato che lo
scheme_specific_part del protocollo http si risolve
nello schema //autorità/percorso.
La parte autorità è stata genericamente indicata come
parte contenente il nome di dominio, cioè
l'dentificativo univoco dell'host su cui gira il server
che risponde alle richieste del client.
La parte //atuorità è in realtà molto più ricca e può essere ulteriormente specificata secondo lo schema che segue:
//[utente[:parola d'ordine]@]nodo[:porta]
Le parti racchiuse all'interno delle parentesi quadre
sono facoltative; se esse vengono omesse saranno
utilizzate le impostazioni predefinite del server o del client.
L'unica parte necessaria è il nodo, che, come si può
intuire, contiene il nome univoco dell'host da raggiungere.
La parte utente è il nome di un utente registrato nel server, a cui è stato autorizzato l'accesso a determinate directory vietate ad altri utenti; normalmente, anche se non necessariamente, ad un utente registrato è collegata una parola di accesso riservata, necessaria per essere autorizzati a consultare il contenuto di specifiche directory; la parte parola d'ordine contiene proprio tale parola d'accesso.
A livello sintattico si può notare che le parti utente e parola d'ordine sono separate dalla parte nodo da un carattere chiocciola @; se all'utente registrato è collegata anche una parola d'accesso, il nome del primo è separato dalla seconda dal carattere :.
L'ultima parte da considerare, probabilmente anche la più difficile da capire per un principiante, è la porta.
Il concetto di porta ha a che fare con la struttura client - server che sta alla base della comunicazione via internet; tale comunicazione è finalizzata al reperimento di risorse che possono essere molto diverse fra loro; la diversità delle risorse implica anche la diversità dei vari programmi client e dei vari programmi server con cui la comunicazione viene gestita.
Su uno stesso host, pertanto, possono girare contemporaneamente più server, ciascuno dei quali gestisce un particolare tipo di comunicazione; tali server comunicano con i rispettivi client attraverso uno specifico canale di comunicazione identificato da un numero.
Il numero identificativo del canale di comunicazione è detto porta e di solito esso è definito in modo standard a seconda del tipo di server che lo utilizza; ad esempio, i server http di solito utilizzano la porta n. 80 per comunicare con i vari client.
Il fatto che ci siano delle porte standard, non implica che i server devono per forza utilizzarle, essi possono esigere che la comunicazione avvenga su una porta non standard; se così avviene, il client che vuole comunicare con quel server deve sapere quale sia il canale di comunicazione da utilizzare; uno dei modi per dire al client quale sia il canale che il server utilizza è quello di indicarlo nell'url in corrispondenza della parte porta.