1000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Reindirizzare il traffico web a 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 una specifica applicazione Web (come Node o Varnish p.ex).
Prerequisiti
- Installare HAproxy sul server cloud.
Reindirizzare il traffico web a una porta specifica
Per impostazione predefinita, su Server Cloud, il traffico Web viene inviato ad Apache. Per inviare le richieste a uno script Node o a un altro servizio (se "ascolta" su una porta tra 4000 e 4009), è necessario passare attraverso HAproxy.
Questo vale in particolare per i server Express, Socket. IO, Meteor.js, Nuxt.js, Django, Flask, Ruby on Rails, anche eventualmente Java (J2E), ecc.
Per questo, è necessario assicurarsi che il servizio ascolti bene su un porto tra 4000 e 4009 (in particolare con server.listen(4000)
per Express o un server HTTP Node di base, ma a seconda del tipo di progetto con altri mezzi, un file di configurazione, nel codice o altro) e su tutte le interfacce (0.0.0.0).
Sarà anche necessario configurare HAproxy come nell'esempio seguente:
- Clicca qui per accedere alla gestione del prodotto sul Manager Infomaniak (Hai bisogno di aiuto?).
- Clicca direttamente su il nomeattribuito al prodotto in questione.
- Clicca su Fast installare nel menu laterale sinistro.
- Clicca su il menu di azione â‹® Situato a destra di HAproxy.
- Clicca su Configura:
- Scegli le informazioni desiderate e salva:
Recupero dell'IP di origine di una query
Quando si reindirizza il traffico Web all'applicazione Web, l'elaborazione delle query cambia e la query viene prima ricevuta da un Reverse Proxy (locale al server) che poi trasferisce la richiesta alla porta scelta. Così, a causa del trasferimento della richiesta, i metodi che di solito permettono di recuperare l’IP del visitatore daranno l’IP del Reverse Proxyinvece di quella del visitatore.
Quindi, per recuperare l'IP sorgente reale del visitatore in questi casi, è necessario consultare un header HTTP denominato X-Forwarded-For
, che conterrà gli IP di origine accumulati durante ogni reindirizzamento. Questo header conterrà quindi per ultimo l'indirizzo IP originale del cliente, che consente di identificare il visitatore reale.
Attenzione: È importante notare che gli header HTTP possono essere manipolati, il che comporta rischi per la sicurezza. Per minimizzare questi rischi, si consiglia di verificare che la query provenga da un server affidabile prima di fidarsi del contenuto dell'header X-Forwarded-For
Questa verifica può comportare la verifica che la richiesta sia stata inoltrata da un server intermediario di fiducia, identificato da un elenco predefinito di indirizzi IP. Nel caso in cui il sito utilizzi un IP dedicato, i server di fiducia 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