mirror of
https://github.com/mintlify/docs.git
synced 2026-09-14 13:35:46 +08:00
131cfda71c
* docs: clarify Route 53 and CloudFront page title for SEO * docs: clarify Route 53 and CloudFront titles in es/fr/zh translations --------- Co-authored-by: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
266 lines
12 KiB
Plaintext
266 lines
12 KiB
Plaintext
---
|
|
title: "Despliega en una subruta con 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
|
|
- `/_mintlify/*` - Obligatorio para las solicitudes del playground de API
|
|
|
|
Dirige el tráfico a estas rutas con una política de caché **CachingEnabled**:
|
|
|
|
- `/mintlify-assets/*` - Obligatorio para CSS, JavaScript y favicons
|
|
- `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">
|
|
### `/mintlify-assets/*`
|
|
</div>
|
|
|
|
Crea un comportamiento con un **Path pattern** de `/mintlify-assets/*` con **Origin and origin groups** apuntando a la URL `.mintlify.site`. Esta ruta sirve el CSS, JavaScript y favicons de tu documentación desde la raíz de tu dominio.
|
|
|
|
- Establece "Cache policy" en **CachingOptimized**.
|
|
- Establece "Origin request policy" en **AllViewerExceptHostHeader**.
|
|
- Establece "Viewer protocol policy" en **Redirect HTTP to HTTPS**.
|
|
|
|
<div id="_mintlify">
|
|
### `/_mintlify/*`
|
|
</div>
|
|
|
|
Crea un comportamiento con un **Path pattern** de `/_mintlify/*` con **Origin and origin groups** apuntando a la URL `.mintlify.site`. Esta ruta gestiona las solicitudes del playground de API desde la raíz de tu dominio.
|
|
|
|
- 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="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 /> |