Vai a http://localhost:8080
Se avete avuto a che fare con qualcosa che riguarda la pubblicazione di un sito web o anche semplicemente di un qualsiasi altro servizio accessibile tramite un browser è possibile che vi siate imbattuti in localhost 8080. Ma cos’è localhost 8080? a cosa serve e come funziona?
Cerchiamo di spiegare meglio il funzionamento di questo particolare indirizzo web.
Indice
- Cosa significa localhost:8080?
- Come funziona localhost:8080?
- Perché si usa la porta 8080?
- Riassumendo: perché si usano insieme in localhost:8080?
- Problemi più comuni
- Conclusioni
Cosa significa localhost:8080?
Per iniziare a capire il significato di localhost la prima cosa che possiamo fare è quella di tradurlo (almeno parzialmente) in italiano. Questa parola viene dall’unione di local (locale) e host (letteralmente potremo tradurlo come ospitante, ma l’uso di host in italiano è abbastanza diffuso in informatica per indicare un computer in una rete). Capiamo subito che si tratta di qualcosa di locale, che fa quindi riferimento al computer su cui lo digitiamo e non un computer esterno.
Il concetto di localhost:8080 è un concetto abbastanza complesso, in cui ci imbatteremo, ad esempio, se vorremo installare una copia funzionante di wordpress sul nostro computer (ad esempio per fare test o esperimenti vari). Di per se il concetto potrebbe essere semplice, ma assume diverse sfaccettature che ne potrebbero rendere complicata la comprensione. Vedremo però di chiarire al meglio possibile tutte queste sfaccettature nel resto di questa pagina.
Quando digitiamo un indirizzo nella barra degli indirizzi di un browser, di solito specifichiamo un dominio, ad esempio informaticappunti.it. Quando premiamo invio il dominio viene trasformato in un indirizzo IP tramite il sistema DNS, e viene aperta una connessione sulla porta predefinita (80) sul server che ospita il sito per richiedere la relativa pagina web. Il server, a sua volta, risponde con la pagina web richiesta e questa viene disegnata sul nostro schermo.
Quando digitiamo localhost:8080 succede la stessa cosa. In questo caso però non verrà utilizzato il sistema DNS per trasformare localhost in un indirizzo IP, ma il nostro computer saprà già che indirizzo assegnare: 127.0.0.1, ovvero l’indirizzo che corrisponde al computer stesso.
In questo caso il :8080 serve a specificare la porta su cui dovremo connetterci, che sarà diversa da quella predefinita.
Localhost:8080 indica quindi la connessione alla porta 8080 sul computer locale.
Come funziona localhost:8080?
Abbiamo detto che, se digitiamo localhost:8080 nel browser, viene aperta una connessione al computer locale sulla porta 8080 e che, per capire che localhost si riferisce al computer locale non viene utilizzato il sistema DNS… ma allora come fa il sistema operativo a capire cosa fare?
Il file hosts
Il sistema operativo ha solitamente un file chiamato hosts
, che viene consultato ogni volta che digitiamo un dominio di un servizio o un sito web e, se il dominio viene trovato in questo file, ciò che è scritto nel file hosts ha la precedenza e non viene consultato il sistema DNS.
In questo file sono solitamente scritte delle coppie (una per riga) di indirizzi ip e nome host e, fra le coppie predefinite di ogni sistema operativo, troviamo proprio la coppia relativa a localhost, solitamente in questa forma:
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
Questo indica al sistema operativo che, quando l’utente specifica localhost, questo deve essere risolto con l’indirizzo ip 127.0.0.1, che, per convenzione, è un indirizzo ip che indica il sistema locale. Localhost e 127.0.0.1 servono quindi a dire al nostro computer/server “chiama te stesso”.
Sui sistemi Unix come Linux, Ubuntu, Mint o anche macOS, il file hosts si trova solitamente nel percorso:
/etc/hosts
Su windows invece, lo troveremo in:
c:\windows\system32\drivers\etc\hosts
Si può modificare il file hosts?
Se vogliamo possiamo modificare il file hosts ed aggiungere nuove righe (non è consigliabile modificare la linea contenente localhosts in quanto potrebbe compromettere il funzionamento dell’intero sistema).
Se ad esempio abbiamo appena installato una copia locale del nostro sito (nel nostro caso informaticappunti.it) e volessimo accedervi, potremmo farlo utilizzando localhost per accedere al server locale. Potremmo però anche modificare il file hosts e far si che anche il dominio informaticappunti.it venga risolto dal sistema operativo con l’indirizzo IP 127.0.0.1. In questo modo potremmo navigare nella nostra copia locale proprio come se lo stessimo facendo su quella pubblica, ovvero digitando nel browser informaticappunti.it (potrebbe essere necessario aggiungere :8080 nel caso il nostro server locale sia in ascolto sulla porta 8080). La riga da aggiungere al file hosts in questo caso sarebbe:
127.0.0.2 informaticappunti.it
Quando poi avremmo terminato i nostri test potremmo eliminare la riga dal file e tornare ad accedere alla versione pubblica del sito.
Perché si usa la porta 8080?
La domanda successiva che potrebbe sorgere spontanea è: perché spesso viene utilizzata la porta 8080 e non la porta predefinita 80?
Le risposte potrebbero essere diverse. Ad esempio potrebbe esserci già in esecuzione un altro servizio sulla porta 80, potremmo infatti avere un web server sulla porta 80 e un app server sulla 8080 che forniscono servizi diversi.
Un altro motivo per cui spesso si utilizza la porta 8080 è che, su alcuni sistemi operativi, potrebbero essere necessari dei permessi particolari per utilizzare la porta predefinita 80, e potremmo non voler concedere questi permessi all’applicazione che gestisce il nostro server web esposto pubblicamente.
Riassumendo: perché si usano insieme in localhost:8080?
Abbiamo spiegato come funziona localhost e per quale motivo si usa la porta 8080. Ora proviamo a mettere insieme le cose e capire in quali casi e perché si usano insieme formando localhost:8080.
Server web/LAMP
Lo scenario più comune di utilizzo di localhost:8080 è quello in cui abbiamo installato sul nostro computer un server web o un altro servizio che utilizza la porta 8080. Ad esempio è probabile che se installeremo un server LAMP sul nostro computer accederemo ai contenuti del nostro server web proprio tramite localhost:8080.
Phpmyadmin
Un altro scenario abbastanza comune è l’utilizzo di localhost:8080 per accedere al tool phpmyadmin per la gestione di un server database mysql installato sul nostro computer. in questo caso è probabile che l’indirizzo predefinito da inserire nel browser per accedere a phpmyadmin sarà:
http://localhost:8080/phpmyadmin
Questo ci permetterà di gestire il nostro database mysql in maniera semplice e senza l’utilizzo di programmi aggiuntivi.
Problemi più comuni
Quando cerchiamo di risolvere dei problemi relativi all’uso di localhost:8080 dobbiamo sempre ricordare che questo indirizzo si riferisce sempre alla macchina stessa. Non possiamo quindi installare un server web o un servizio su un computer e tentare di utilizzarlo da un altro computer, anche all’interno della stessa rete locale) utilizzando localhost:8080. In questi casi la via più semplice solitamente è quella di conoscere l’indirizzo ip del computer su cui abbiamo installato il servizio e chiamare utilizzando quello al posto di localhost ( ad esempio 192.168.0.15:8080).
Un altro particolare da tenere in considerazione se il nostro server sembra non funzionare è che alcune configurazioni di server o servizi potrebbero accettare connessioni solamente sull’indirizzo 127.0.0.1 di localhost. In questi casi non sarà quindi impossibile accedere al server da una postazione remota digitandone l’indirizzo ip, dovremo mettere mano alla configurazione e mettere il server “in ascolto” anche sugli altri indirizzi.
Conclusioni
Abbiamo visto cosa sono e a cosa servono localhost e 8080. Abbiamo poi spiegato per quali motivi spesso vengono utilizzati insieme nella forma localhost:8080. A questo punto AÄ