Antes de usar React como una aplicación de nodo universal en mi trabajo actual, hubo varias veces en las que creé sitios únicos que quería poner en mi antiguo servidor. (principalmente para fines de cartera)
Origen del problema
Lo que me di cuenta es que bajo ese subdominio el enrutamiento en el render del lado del servidor nunca funcionó realmente. Esto se debe a que Apache no reconoce las rutas que la aplicación React define como rutas seguras.
En su lugar, busca uno de estos archivos:
- índice.html
- index.shtml
- índice.php
- índice.htm
- por defecto.html
- página1.html
- index.pl
- índice.cgi
- índice.php
- inicio.html
Si alguno de estos archivos se encuentra en una carpeta con un directorio que coincida con su ruta en Apache, servirá ese archivo en lugar de consultar su aplicación React.
Sin embargo, con un archivo en el directorio de su aplicación, puede solucionar todo esto con bastante facilidad..htaccess
Solución
Después de crear / transpilar su sitio React, asegúrese de colocar su código JavaScript construido, así como cualquier HTML y CSS que tenga en su directorio.www
Después de eso, coloque un archivo con este código:.htaccess
RewriteEngine on
# Don't rewrite files or directories
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Rewrite everything else to index.html to allow html5 state links
RewriteRule ^ index.html [L]
¡Deberías estar listo para ir! Si tiene alguna pregunta o algo que agregar, deje un comentario a continuación.
https://www.malikbrowne.com/blog/using-react-router-with-apache
Comentarios
Publicar un comentario