Итак, у меня есть SPA, созданный с помощью Create-React-App. Он отлично работает для локального разработчика, и я хотел развернуть встроенное приложение, используя nginx.
. Я настроил свои Dockerfile
и nginx.conf
, и сначала все вроде нормально работало. Но потом я заметил странную проблему.
Большая часть приложения работает нормально, но когда я пытаюсь получить доступ к вложенному URL-адресу напрямую (т.е. не переходя к нему через приложение -> Это работает нормально. Проблема возникает только когда я получаю прямой доступ к URL-адресу или обновляю sh страницу), в консоли / сети возникают ошибки при загрузке встроенных файлов. Скажем, у меня есть доступ к localhost:3000/app/potato
, я вижу, что мой браузер пытается получить доступ к файлам с localhost:3000/app/static/js/2.ebff4827.chunk.js
(вместо localhost:3000/static/js/2 .ebff4827.chunk.js
)
Доступ к localhost:3000/app
работает нормально, но localhost:3000/app/
(с завершающим / ) имеет такое же странное поведение.
В результате браузер не может загрузить страницу ...
Вот мой nginx.conf
(хотя я не верю, что это вызывает мою ошибку , как я настроил его с пустым CRA, и он работал нормально https://github.com/piaverous/cra-nginx-demo):
server {
listen 3000;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri /index.html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
Кто-нибудь знает, что может быть причиной проблемы? Я в полном недоумении здесь