Nuestra integración con Cloudflare utiliza la solución de código de borde de Cloudflare Cloudflare Workers para ofrecerle un servicio de sala de espera que funciona directamente desde su CDN sin necesidad de que realice ningún cambio en el código de su aplicación ni en sus servidores web.
Introducción
Este artículo le guiará a través de los cuatro pasos necesarios para integrar CrowdHandler con Cloudflare.
- Pasos 1-2 le guiará en la instalación y configuración del trabajador.
- Pasos 3-4 demuestran cómo activar la protección CrowdHandler en las rutas elegidas.
- Pasos 5-6 proporciona referencias a artículos que le ayudarán a configurar sus salas de espera a través del panel de control de CrowdHandler.
Si en algún momento de la guía te quedas atascado o tienes alguna pregunta, no dudes en ponerte en contacto con nosotros a través de https://www.crowdhandler.com.
Requisitos previos
- Una cuenta CrowdHandler activa. Si aún no te has registrado, puedes hacerlo aquí.
- Una cuenta de Cloudflare.
- 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.
Paso 1: Crear un Cloudflare Worker.
- Inicie sesión en su cuenta de Cloudflare.
- Seleccione uno de sus sitios web:
- Seleccione Rutas de los trabajadores Menú de navegación a la izquierda
- Hay un botón "Gestionar trabajadores" en la parte superior derecha de la página, haga clic en él y continúe con el siguiente paso.
- En la parte superior derecha, haga clic en el botón "Crear aplicación"
- En esta página, hay un botón en el centro "Crear trabajador", haga clic en él y continúe.
- Ahora puedes establecer el nombre de tu trabajador, ponlo en crowdhandler-integration
Nota: No se puede cambiar el código todavía. Es sólo una configuración básica de los trabajadores. - Proceda a crear el trabajador haciendo clic en "Desplegar"
- Ahora, apliquemos la integración del código pulsando "Editar código"
- Puedes ver el código predeterminado de Hola Mundo
- Copie nuestro código de integración de GitHub y pégalo en el script.
- Haga clic en el botón Guardar y desplegar.
Paso 2: Configurar las variables del trabajador.
- Pulsa el botón Atrás en la página de edición del script.
- Vaya a Configuración -> Variables.
- Añada las siguientes variables y haga clic en guardar y desplegar.
- API_ENDPOINT = https://api.crowdhandler.com/v1
- CLAVE_API = SU_CLAVE_PÚBLICA_AQUÍ (Se puede encontrar en la sección Cuenta -> API del panel de control de administración de CrowdHandler).
- (Opcional ) WHITELABEL = falso ( por defecto) | true
- (Optional) ORIGIN_TYPE = wordpress (set this optional variable if you are protecting a WordPress or WooCommerce website)
- (Opcional ) NO_BYPASS = TU_TOKEN_ALEATORIO_AQUÍ
- (Opcional ) FAIL_TRUST = falso(por defecto) | verdadero
- (Opcional ) SAFETY_NET_SLUG = SU_SLUG_DE_SALA_DE_ESPERA_AQUÍ
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.
Paso 3: Configurar rutas protegidas.
- En el menú de navegación de la izquierda, haga clic en Sitios web y, a continuación, en el dominio en el que está integrando CrowdHandler.
- Utilizando de nuevo la navegación de la izquierda, seleccione Rutas para trabajadores
- Añada la ruta que desea proteger.
El patrón anterior activará el trabajador CrowdHandler para todas las rutas de su sitio, excepto para las rutas excluidas que configure en el siguiente paso. Recomendamos comenzar con este patrón a menos que esté seguro de que su sitio no se inundará con tráfico a rutas no protegidas.
Puede realizar configuraciones de rutas de sala de espera más detalladas a través de la consola de administración de CrowdHandler.
Paso 4: Excluir rutas.
- Excluya las rutas que no deben tener protección CrowdHandler añadiendo rutas adicionales seleccionando "Ninguna" en el desplegable del trabajador.
CrowdHandler no intentará automáticamente poner en cola rutas con las siguientes extensiones de archivo. "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". Es su responsabilidad omitir los patrones y rutas que no deban ponerse en cola. Algunos ejemplos comunes son: * Rutas utilizadas para almacenar activos estáticos y multimedia, por ejemplo /wp-includes/*. * URL de devolución de llamada realizadas por proveedores de pago de terceros. * JSON y canales RSS.
Paso 5: Finalice la configuración.
CrowdHandler está integrado con su cuenta de Cloudflare y ahora le toca a usted personalizar su configuración de CrowdHandler a través de la consola de administración de CrowdHandler. Estos son algunos artículos de soporte recomendados que cubren los aspectos básicos:
- Primeros pasos (Puedes ignorar las partes sobre la instalación de la integración de Javascript).
- Salas de espera
- Configuración del dominio
Paso 6 (Recomendado): Elimine Cloudflare Workers Rate Limiting.
En el momento de redactar este documento, el plan gratuito de Cloudflare workers está sujeto a un límite de tasa de ráfagas de 1.000 solicitudes por minuto y a un límite de solicitudes diarias de 100.000 solicitudes. Si cree que estos límites pueden ser demasiado bajos para usted, le recomendamos que actualice al plan de pago de Cloudflare workers para eliminar los límites.