2017-02-17 11 views
0

Итак, у меня есть проект реагирования на firebase (выдача службы firebase или на firebaseapp.com) и иметь определенную реакцию маршрут следующим образом:Сервер Firebase пытается разрешить http: // localhost: 5000/view/-B3eiIwcYV в физический файл и выдает ошибку 404

import { Router, Route, IndexRoute } from 'react-router' 
 
.... 
 

 
render(
 
    <Provider store={store}> 
 
    { /* Tell the Router to use our enhanced history */ } 
 
    <Router history={history}> 
 
     <Route path="/" component={App}> 
 
     <IndexRoute component={PhotoGrid} /> 
 
     <Route path="/view/:postId" component={Single}></Route> 
 
     </Route> 
 
    </Router> 
 
    </Provider>, 
 
    document.getElementById('root') 
 
);

который, если перезагружается «Single» (браузер перезарядка) заставляет firebase попытаться найти физическое местоположение для HTTP: // {локальный или firebaseapp.com}/view/-B3eiIwcYV, чего, конечно, не существует.

Когда я инициализируюсь мой проект с firebase, я определил следующий вариант:

Configure as a single-page app (rewrite all urls to /index.html)? -> No

Сформированных ошибки следующим образом:

-B3eiIwcYV Failed to load resource: the server responded with a status of 404 (Not Found)

Как это разрешить?

ответ

0

Во время процесса «firebase init» для React Router вы действительно хотите сказать «Да» «Настроить как одностраничное приложение». во время «firebase init» вашей папки проекта.

Передел добавлен в базу огня. JSON файл:

{ 
 
    "database": { 
 
    "rules": "database.rules.json" 
 
    }, 
 
    "hosting": { 
 
    "public": "public", 
 
    "rewrites": [ 
 
     { 
 
     "source": "**", 
 
     "destination": "/index.html" 
 
     } 
 
    ] 
 
    } 
 
}