Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

157
Views
React Routes Problema sitio web solo en producción

Estoy trabajando en mi sitio web personal y encontré un problema que solo ocurre en producción, el problema no ocurre en mi entorno local.

este es el escenario

He configurado las rutas como las siguientes

 const Routes = () => ( <Router> <Route exact path="/" component={Home} /> <Route exact path="/works" component={work} /> <Route exact path="/skills" component={skills} /> </Router> )

Como dije localmente, puedo acceder a todas las rutas que hacen que mis componentes funcionen y mis habilidades

  • http://localhost:3000/
  • http://localhost:3000/trabajo
  • http://localhost:3000/habilidades

Construyo e implemento el código en mi dominio y tengo el problema de acceder a las siguientes rutas

  • http://ejemplo.com/trabajo
  • http://ejemplo.com/habilidades

Este es el error que me sale en estas rutas

Este archivo XML no parece tener ninguna información de estilo asociada. La estructura del documento se muestra a continuación.

 <Error> <Code>NoSuchKey</Code> <Message>The specified key does not exist.</Message> </Error>

No me queda claro qué estoy haciendo mal y por qué este error no ocurre en la configuración regional.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Cuando usa BrowserRouter, está haciendo uso de la API de historial que le permite escribir código que dice:

Hola navegador. Voy a cambiar el DOM usando JavaScript ahora. Va a cambiar la página para que sea como la página que obtendría si visitara /example , para que pueda cambiar la URL en la barra de direcciones y marcarla como favorita.

Su problema es que está haciendo el reclamo sin hacer los cambios en el servidor para respaldarlo. Cuando el navegador visita la página en el servidor, arroja un error porque no le ha dicho qué hacer para esa URL.

Tienes algunas opciones aquí:

  • Use HashRouter en su lugar
  • Use una herramienta como Next.js o Gatsby para generar páginas estáticas para su implementación en el servidor
  • Use una herramienta como Next.js para generar las páginas que usan la representación del lado del servidor (aunque esa no es una opción en S3 que creo que está usando actualmente, por lo que también debería cambiar de host)
  • Use algún tipo de configuración de reescritura para que cualquier error 404 se convierta en un error 200 OK y sirva la página esqueleto index.html que arranca su aplicación (realmente no lo recomiendo porque rompe los 404 normales y es malo para el almacenamiento en caché) .
    • Como arriba, pero limítese a las páginas que sabe que existen. Es probable que esto sea un problema de mantenimiento, ya que de alguna manera necesita (probablemente manualmente) mantener las URL en el servidor sincronizadas con los cambios en su aplicación.
about 4 years ago · Juan Pablo Isaza Report

0

 import { HashRouter } from "react-router-dom"; <HashRouter> <App /> </HashRouter>

Por favor, intente eso en su lugar

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!