mirror of
https://github.com/mintlify/docs.git
synced 2026-09-14 13:35:46 +08:00
3bebd828f6
* docs: sync es/fr/zh translations with recent English updates * docs: tighten translated SEO metadata and fix register consistency --------- Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
252 lines
11 KiB
Plaintext
252 lines
11 KiB
Plaintext
---
|
|
title: "AWS Route 53 y CloudFront"
|
|
sidebarTitle: "AWS"
|
|
description: "Despliega tu documentación de Mintlify en una subruta en AWS usando Route 53 para el enrutamiento DNS y CloudFront como CDN con funciones Lambda@Edge."
|
|
keywords: ["implementación en AWS", "Route 53 DNS", "CloudFront CDN", "políticas de caché"]
|
|
---
|
|
|
|
import Propagating from "/snippets/es/custom-subpath-propagating.mdx";
|
|
import SubpathSetupSteps from "/snippets/es/subpath-setup-steps.mdx";
|
|
|
|
Para alojar tu documentación en una subruta como `yoursite.com/docs` con AWS Route 53 y CloudFront, debes configurar tu proveedor de DNS para que apunte a tu distribución de CloudFront.
|
|
|
|
Antes de configurar AWS, define tu ruta base en tu dashboard:
|
|
|
|
<SubpathSetupSteps />
|
|
|
|
<div id="overview">
|
|
## Descripción general
|
|
</div>
|
|
|
|
<Note>
|
|
Los siguientes ejemplos usan la ruta base `/docs`. Si utilizas otra ruta base, reemplaza `/docs` por la tuya.
|
|
</Note>
|
|
|
|
Dirige el tráfico a estas rutas con una política de caché **CachingDisabled**:
|
|
|
|
- `/.well-known/acme-challenge/*` - Obligatorio para la verificación de certificados de Let's Encrypt
|
|
- `/.well-known/vercel/*` - Obligatorio para la verificación del dominio
|
|
- `/docs/*` - Obligatorio para el enrutamiento por subruta
|
|
- `/docs/` - Obligatorio para el enrutamiento por subruta
|
|
|
|
Dirige el tráfico a esta ruta con una política de caché **CachingEnabled**:
|
|
|
|
- `/mintlify-assets/_next/static/*`
|
|
- `Default (*)` - La página de inicio de tu sitio web
|
|
|
|
Todos los comportamientos (Behaviors) deben tener una **origin request policy** de `AllViewerExceptHostHeader`.
|
|
|
|
Los comportamientos de tu subruta deben permitir todos los métodos HTTP. CloudFront solo permite solicitudes `GET` y `HEAD` de forma predeterminada, lo que bloquea las solicitudes `POST` que Mintlify usa para analíticas y otras funciones interactivas.
|
|
|
|

|
|
|
|
<div id="create-cloudfront-distribution">
|
|
## Crear una distribución de CloudFront
|
|
</div>
|
|
|
|
1. Navega a [CloudFront](https://aws.amazon.com/cloudfront) en la consola de AWS.
|
|
2. Selecciona **Create distribution**.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
3. En Origin domain, ingresa `[SUBDOMAIN].mintlify.site`, donde `[SUBDOMAIN]` es el subdomain único de tu proyecto.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
4. En «Web Application Firewall (WAF)», habilita las protecciones de seguridad.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
<Note>
|
|
Las reglas de WAF pueden bloquear las solicitudes `POST` que Mintlify usa para analíticas y otras funciones interactivas. Si las analíticas dejan de aparecer en tu panel después de habilitar WAF, revisa los registros de WAF en busca de solicitudes bloqueadas a rutas bajo `/docs/_mintlify/`.
|
|
</Note>
|
|
|
|
5. Deja el resto de la configuración con los valores predeterminados.
|
|
6. Selecciona **Create distribution**.
|
|
|
|
<div id="add-default-origin">
|
|
## Agregar origen predeterminado
|
|
</div>
|
|
|
|
1. Después de crear la distribución, ve a la pestaña "Origins".
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
2. Busca tu URL de staging que refleje el dominio principal. Esto varía según el proveedor de alojamiento de tu página de inicio. Por ejemplo, la URL de staging de Mintlify es [mintlify-landing-page.vercel.app](https://mintlify-landing-page.vercel.app).
|
|
|
|
<Info>
|
|
Si Webflow aloja tu página de inicio, usa la URL de staging de Webflow. Se verá como `.webflow.io`.
|
|
|
|
Si usas Vercel, usa el domain `.vercel.app` disponible para cada proyecto.
|
|
</Info>
|
|
|
|
3. Crea un nuevo Origin y agrega tu URL de staging como el "Origin domain".
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
Ahora deberías tener dos Origins: uno con `[SUBDOMAIN].mintlify.site` y otro con tu URL de staging.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
<div id="set-behaviors">
|
|
## Configurar comportamientos
|
|
</div>
|
|
|
|
Los comportamientos en CloudFront permiten controlar la lógica de subrutas. A grandes rasgos, queremos implementar la siguiente lógica:
|
|
|
|
- **Si un usuario llega a tu subruta personalizada**, redirigir a `[SUBDOMAIN].mintlify.site`.
|
|
- **Si un usuario llega a cualquier otra página**, redirigir a la página de inicio actual.
|
|
|
|
1. Ve a la pestaña "Behaviors" de tu distribución de CloudFront.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
2. Selecciona el botón **Create behavior** y crea los siguientes comportamientos.
|
|
|
|
<div id="well-known">
|
|
### `/.well-known/*`
|
|
</div>
|
|
|
|
Crea comportamientos para las rutas de verificación de domain de Vercel con un **Patrón de ruta** de `/.well-known/*` y establece **Origin and origin groups** en la URL de tu documentación.
|
|
|
|
Para "Cache policy", selecciona **CachingDisabled** para garantizar que estas solicitudes de verificación se procesen sin caché.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
<Info>
|
|
Si `.well-known/*` es demasiado genérico, puedes acotarlo a un mínimo de 2 comportamientos para Vercel:
|
|
- `/.well-known/vercel/*` - Obligatorio para la verificación de domain de Vercel
|
|
- `/.well-known/acme-challenge/*` - Obligatorio para la verificación del certificado de Let's Encrypt
|
|
</Info>
|
|
|
|
<div id="your-subpath">
|
|
### Tu subruta
|
|
</div>
|
|
|
|
Crea un comportamiento con un **Path pattern** de la subruta que elijas, por ejemplo `/docs`, con **Origin and origin groups** apuntando a la URL `.mintlify.site` (en nuestro caso `acme.mintlify.site`).
|
|
|
|
- Establece "Cache policy" en **CachingDisabled**.
|
|
- Establece "Origin request policy" en **AllViewerExceptHostHeader**.
|
|
- Establece "Viewer protocol policy" en **Redirect HTTP to HTTPS**.
|
|
- Establece "Allowed HTTP methods" en **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE**.
|
|
|
|
<Warning>
|
|
CloudFront solo permite solicitudes `GET` y `HEAD` de forma predeterminada. Si no permites todos los métodos HTTP, CloudFront rechaza las solicitudes `POST` que Mintlify usa para analíticas, y tu panel no mostrará ninguna vista de página aunque tu documentación se cargue normalmente.
|
|
</Warning>
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
<div id="your-subpath-with-wildcard">
|
|
### Tu subruta con comodín
|
|
</div>
|
|
|
|
Crea un comportamiento con un **Path pattern** que sea la subruta que elijas seguida de `/*`, por ejemplo `/docs/*`, y con **Origin and origin groups** apuntando a la misma URL `.mintlify.site`.
|
|
|
|
Esta configuración debe coincidir exactamente con el comportamiento de tu subruta base, con la excepción de **Path pattern**.
|
|
|
|
- Establece "Cache policy" en **CachingDisabled**.
|
|
- Establece "Origin request policy" en **AllViewerExceptHostHeader**.
|
|
- Establece "Viewer protocol policy" en **Redirect HTTP to HTTPS**.
|
|
- Establece "Allowed HTTP methods" en **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE**.
|
|
|
|
<div id="mintlify-assets_nextstatic">
|
|
### `/mintlify-assets/_next/static/*`
|
|
</div>
|
|
|
|
- Establece la "política de caché" en **CachingOptimized**
|
|
- Establece la "política de solicitud de origen" en **AllViewerExceptHostHeader**
|
|
- Establece la "política de protocolo del visor" en **Redirect HTTP to HTTPS**
|
|
|
|
<div id="default">
|
|
### `Default (*)`
|
|
</div>
|
|
|
|
Edita el comportamiento de `Default (*)`.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
1. Cambia **Origin and origin groups** del comportamiento predeterminado a la URL de staging (en nuestro caso, `mintlify-landing-page.vercel.app`).
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
2. Selecciona **Guardar cambios**.
|
|
|
|
<div id="check-behaviors-are-set-up-correctly">
|
|
### Verifica que hayas configurado los comportamientos correctamente
|
|
</div>
|
|
|
|
Si sigues los pasos anteriores, tus comportamientos deberían verse así:
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
<div id="preview-distribution">
|
|
## Vista previa de la distribución
|
|
</div>
|
|
|
|
Para probar tu distribución, ve a la pestaña "General" y visita la URL de **Distribution domain name**.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
Todas las páginas deberían enrutar a tu página de inicio principal. Cuando agregas la subruta que elegiste, por ejemplo `/docs`, la URL debería servir tu documentación de Mintlify.
|
|
|
|
<div id="connect-with-route-53">
|
|
## Conectar con Route 53
|
|
</div>
|
|
|
|
A continuación, conecta la distribución de CloudFront a tu dominio principal.
|
|
|
|
<Note>
|
|
Para esta sección, también puedes consultar la guía oficial de AWS sobre [Configurar
|
|
Amazon Route 53 para enrutar el tráfico a una
|
|
distribución de CloudFront](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html#routing-to-cloudfront-distribution-config)
|
|
</Note>
|
|
|
|
1. Ve a [Route53](https://aws.amazon.com/route53) en la consola de AWS.
|
|
2. Ve a la "Hosted zone" de tu dominio principal.
|
|
3. Selecciona **Create record**.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
4. Activa `Alias` y luego, en **Route traffic to**, selecciona la opción `Alias to CloudFront distribution`.
|
|
|
|
<Frame>
|
|

|
|
</Frame>
|
|
|
|
5. Selecciona **Create records**.
|
|
|
|
<Note>
|
|
Es posible que tengas que eliminar el registro A existente si ya hay uno.
|
|
</Note>
|
|
|
|
Tu documentación ahora está disponible en la subruta elegida de tu dominio principal.
|
|
|
|
<Propagating /> |