La nostra integrazione con Cloudflare utilizza la soluzione edge code di Cloudflare Lavoratori Cloudflare per fornirvi un servizio di sala d'attesa che funziona direttamente dalla vostra CDN senza che dobbiate apportare alcuna modifica al codice della vostra applicazione o ai server web.

Introduzione

Questo articolo illustra i quattro passaggi necessari per integrare CrowdHandler con Cloudflare.

Se in qualsiasi momento della guida vi bloccate o avete domande, non esitate a contattarci via https://www.crowdhandler.com.

Prerequisiti

  1. Un account CrowdHandler attivo. Se non vi siete ancora iscritti potete farlo qui.
  2. Un account Cloudflare.
  3. The domain you intend to protect should be configured as "Proxied" in Cloudflare. DNS only mode will not work.

Protecting a WordPress or WooCommerce site? Make sure to set ORIGIN_TYPE = wordpress in Step 2 of the guide. 

Passo 1: creare un worker Cloudflare.

  1. Accedere al proprio account Cloudflare.
  2. Selezionate uno dei vostri siti web:
  3. Selezionare Percorsi dei lavoratori Menu di navigazione a sinistra
  4. C'è un pulsante "Gestire i lavoratori" in alto a destra della pagina, fare clic su di esso e passare alla fase successiva.


  5. In alto a destra, fare clic sul pulsante "Crea applicazione"


  6. In questa pagina, al centro è presente un pulsante "Creare un lavoratore", fare clic su di esso e procedere.

     
  7. Ora è possibile impostare il nome del lavoratore, impostandolo su crowdhandler-integrazione
    Nota: Non è ancora possibile modificare il codice. Si tratta solo di una configurazione di base del lavoratore.


  8. Procedere alla creazione del lavoratore facendo clic su "Distribuire"


  9. Ora, applichiamo l'integrazione del codice premendo "Modifica codice"
  10. Si può vedere il codice predefinito di Hello World

  11. Copiare il nostro codice di integrazione da GitHub e incollarlo nello script.


  12. Fare clic sul pulsante Salva e distribuisci.



Passo 2: Configurare le variabili del lavoratore.

  1. Premete il pulsante indietro nella pagina di modifica dello script.



  2. Spostarsi su Impostazioni -> Variabili.

  • Aggiungete le seguenti variabili e fate clic su salvare e distribuire.
    1. API_ENDPOINT = https://api.crowdhandler.com/v1
    2. CHIAVE API = LA TUA_CHIAVE_PUBBLICA_QUI (Si trova nella sezione Account -> API del pannello di controllo amministrativo di CrowdHandler).
    3. (Facoltativo) WHITELABEL = falso (predefinito) | vero
    4. (Optional) ORIGIN_TYPE = wordpress (set this optional variable if you are protecting a WordPress or WooCommerce website)
    5. (Facoltativo) NO_BYPASS = IL VOSTRO_RANDOM_TOKEN_QUI
    6. (Facoltativo) FAIL_TRUST = falso(predefinito) | vero
    7. (facoltativo) SAFETY_NET_SLUG = IL TUO_SLUG_DELLA_CAMERA_D'ATTESA_QUI

OPTIONAL VARIABLES

WHITELABEL (default false) By default, users will be queued on CrowdHandler's wait.crowdhandler.com domain. If WHITELABEL is set to true, users will be queued on the domain CrowdHandler is protecting. For example, if CrowdHandler has been set up to protect www.example.com, users will be queued on the www.example.com/ch/ path. The /ch/ route does not need to exist in your application. 
Read more about whitelabel waiting rooms here.

ORIGIN_TYPE Set value to wordpress if you are protecting a WordPress or WooCommerce origin. This will exclude URL requests matching the following regex pattern from CrowdHandler API checks.

/(wp-.*|wc-.*|xmlrpc\.php|readme\.html|license\.txt|trackback|feed(?:\/.*)?|comments\/feed(?:\/.*)?)(\?.*)?/

The NO_BYPASS value will be sent to your origin as the value of the x-ch-no-bypass header. You can check for this header in your application to verify that the request has traversed through CrowdHandler. Implementation examples can be found in the "Integration Examples" section of this article.

FAIL_TRUST (default true) By default, users that fail to check in with CrowdHandler's API will be trusted. If set to false, users that fail to check-in with CrowdHandler's API will be sent to a safety net waiting room until CrowdHandler is able to make a decision on what to do with them.
Read more about Trust on Fail here.

If SAFETY_NET_SLUG is defined and FAIL_TRUST is set to false, this waiting room slug will be used as the safety net room. If you do not define a SAFETY_NET_SLUG value and FAIL_TRUST is set to false, a generic waiting room template will be used as the safety net room. 

You can find your waiting room slug in the CrowdHandler control panel in the URL field of your room configuration.

Passo 3: Configurare le rotte protette.

  1. Nella navigazione a sinistra, fare clic su Siti web e poi sul dominio su cui si sta integrando CrowdHandler.

  2. Utilizzando di nuovo la navigazione a sinistra, selezionare Itinerari di lavoro

  3. Aggiungere il percorso che si desidera proteggere.
Lo schema di cui sopra attiverà il worker CrowdHandler per tutti i percorsi del sito, ad eccezione di quelli esclusi, configurati nel passaggio successivo. Si consiglia di iniziare con questo schema, a meno che non si sia sicuri che il sito non sarà inondato di traffico verso percorsi non protetti.

È possibile effettuare ulteriori configurazioni più granulari dei percorsi delle sale d'attesa attraverso la console di amministrazione di CrowdHandler.

Passo 4: escludere le rotte.

  1. Escludere le rotte che non devono avere la protezione di CrowdHandler aggiungendo altre rotte selezionando "Nessuna" nel menu a tendina dei lavoratori.

CrowdHandler non tenterà automaticamente di accodare i percorsi con le seguenti estensioni di file. 

"avi","css","csv","eot","gif","ico","jpg","js","json","map","mov","mp4","mpeg","mpg","ogg","ogv","ott","pdf","png","svg","ttf","webmanifest","wmv","woff","woff2","xml".

È responsabilità dell'utente omettere i modelli e i percorsi che non devono essere accodati. 

Esempi comuni sono:

* Percorsi utilizzati per memorizzare risorse statiche e media, ad esempio /wp-includes/*.
* URL di callback creati da fornitori di pagamenti di terze parti. 
* JSON e feed RSS.


Fase 5: Completare la configurazione.

CrowdHandler è integrato con il vostro account Cloudflare e ora sta a voi personalizzare la configurazione di CrowdHandler attraverso la console di amministrazione di CrowdHandler. Ecco alcuni articoli di supporto consigliati che coprono le nozioni di base:

  1. Come iniziare (È possibile ignorare le parti relative all'installazione dell'integrazione Javascript).
  2. Sale d'attesa
  3. Configurazione del dominio

Passo 6 (consigliato): Rimuovere la limitazione del tasso di lavoro di Cloudflare.

Al momento in cui scriviamo, il piano gratuito di Cloudflare workers è soggetto a un limite di burst rate di 1000 richieste al minuto e a un limite di richieste giornaliere di 100.000 richieste. Se pensate che questi limiti siano troppo bassi per voi, vi consigliamo di passare al piano a pagamento Cloudflare workers per rimuovere i limiti.