1000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Reindirizzare il traffico web verso una porta specifica
Questa guida riguarda il reindirizzamento del traffico web a una porta specifica, anche in caso di utilizzo di un IP dedicato e di un'applicazione web specifica (come Node o Varnish, ad esempio).
Prerequisiti
- installare HAProxy sul Server Cloud
Reindirizzare il traffico web a una porta specifica
Di default, sul Server Cloud, il traffico web viene inviato ad Apache. Per inviare le richieste a uno script Node o a un altro servizio (a condizione che "ascolti" su una porta tra 4000 e 4009), è necessario utilizzare HAProxy.
Questo si applica in particolare a server come Express, Socket.IO, Meteor.js, Nuxt.js, Django, Flask, Ruby on Rails e persino Java (J2E), ecc.
A tal fine, assicurarsi che il servizio stia ascoltando su una porta tra 4000 e 4009 (generalmente con server.listen(4000)
per Express o un server HTTP Node di base, ma a seconda del tipo di progetto potrebbero esserci altri metodi, come un file di configurazione, nel codice o altrove) e su tutte le interfacce (0.0.0.0). Sarà inoltre necessario configurare HAProxy come mostrato nell'esempio seguente:
- Accedere al Manager di Infomaniak (manager.infomaniak.com) da un browser web come Brave o Edge
- Fare clic sull'icona nell'angolo in alto a destra dell'interfaccia (o navigare attraverso il menu laterale sinistro, ad esempio)
- Scegliere Server Cloud (universo Web & Dominio)
- Fare clic direttamente sul nome dell'oggetto in questione nella tabella visualizzata
- Fare clic su Installazione rapida nel menu laterale sinistro
- Fare clic sull'icona â‹® a destra di HAProxy
- Fare clic su Configurare
- Inserire le informazioni desiderate:
Recuperare l'IP di origine di una richiesta
Quando si reindirizza il traffico web alla propria applicazione web, il trattamento delle richieste cambia e la richiesta viene prima ricevuta da un proxy inverso (locale sul server) che poi la inoltra alla porta selezionata. Di conseguenza, a causa del reindirizzamento della richiesta, i metodi che normalmente recuperano l'IP del visitatore restituiranno l'IP del proxy inverso invece di quello del visitatore.
Pertanto, per recuperare l'IP di origine effettivo del visitatore in questi casi, è necessario consultare un'intestazione HTTP chiamata X-Forwarded-For
, che conterrà gli IP di origine accumulati durante ogni reindirizzamento. Questo header conterrà quindi alla fine l'indirizzo IP originale del client, consentendo di identificare il visitatore reale.
Attenzione: È importante notare che gli header HTTP possono essere manipolati, il che presenta rischi per la sicurezza. Per minimizzare questi rischi, è consigliabile verificare che la richiesta provenga effettivamente da un server affidabile prima di fidarsi del contenuto dell'intestazione X-Forwarded-For
. Questa verifica potrebbe implicare assicurarsi che la richiesta sia stata trasmessa da un server intermedio affidabile, identificato da un elenco predefinito di indirizzi IP. Nel caso in cui il sito utilizzi un IP dedicato, i server affidabili sono:
- 83.166.133.15
- 83.166.133.17
- 83.166.133.16
- 84.16.92.5
- 84.16.92.43
- 10.2.32.255
- 10.2.34.164