Estoy trabajando en una aplicación React que se ejecuta en AWS Amplify. Mi aplicación React está usando la biblioteca react-router-dom para enrutar a diferentes componentes. Después de ejecutar amplificar publicar en la CLI, en la raíz de la aplicación (obktraining.com) todo está bien en el navegador, también puedo enrutar a otros componentes de la aplicación. Pero cuando actualizo mi navegador mientras estoy en una ruta (obktraining.com/menu), recibo un mensaje de error de acceso denegado.
He encontrado otras publicaciones sobre problemas similares relacionados con reescrituras y redireccionamientos en Amplify, pero las soluciones proporcionadas no funcionan para mí.
Aquí hay una imagen del error: 
Mi aplicación Amplify reescribe y redirige: 
Nuevamente, el error solo aparece cuando actualizo en una ruta (obktraining.com/menu o obktraining.com/drinks) no en obktraining.com. ¿El problema está causado por la biblioteca react-router-dom o es un problema con la configuración de Amplify? No estoy seguro de adónde ir desde aquí.
He estado enfrentando el mismo error desde hace días. El error está causado por la configuración de amplificación. La solución es simple, edite sus reescrituras y redirecciones agregando una nueva regla.
dirección de origen = </^[^.]+$|.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf|map|json)$)([^.]+ $)/>
dirección de destino = /index.html
estado = 200 (Reescribir)
El código de país se puede dejar en blanco
Guarde e intente actualizar su aplicación nuevamente. Probablemente debería funcionar.
use esto como referencia: https://docs.aws.amazon.com/amplify/latest/userguide/redirects.html#redirects-for-single-page-web-apps-spa
Referencia:
https://docs.aws.amazon.com/amplify/latest/userguide/manual-deploys.html
Me he enfrentado al mismo problema.
Estaba usando la descarga manual de archivos zip (comprimidos) (incorrecta).
A continuación se explica cómo implementar correctamente de forma manual:
npm run buildAhora se creará una carpeta de compilación .
2. Comprime el contenido de esta carpeta
No el contenido de todo el proyecto.
Cambia el directorio a la carpeta de compilación y comprime el contenido en el costado.
3. Cargue ese archivo comprimido dentro del directorio de compilación Ahora esto debería funcionar bien.
:)
Puede navegar a 'reescribir y redireccionar' en su aplicación desde la consola de AWS Amplify y hacer clic en editar y seleccionar el editor de texto abierto, y agregar este fragmento de código en su matriz (si está presente) o colocar las llaves de la matriz a su alrededor.
{ "source": "</^[^.]+$|\\.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf)$)([^.]+$)/>", "target": "/index.html", "status": "200", "condition": null }Referencia: https://docs.aws.amazon.com/amplify/latest/userguide/redirects.html#redirects-for-single-page-web-apps-spa
Entonces puedes ponerlo (como Dhruv Godambe publicó arriba)
</^((?!.(css|gif|ico|jpg|js|png|txt|svg|woff|ttf)$).)*$/>
como dirección de origen y
/index.html como su dirección de destino
La regla correcta debería ser así:
Source address: </^[^.]+$|\.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|ttf)$)([^.]+$)/> Target address: /index.html Status: 200