2016-08-29 21 views
1

リア・ルータを使用してページを認証ページに移動しています。リアクタ・ルータに入力ファイルが指定されていません

import React, {Component} from 'react'; 
import ReactDOM from 'react-dom'; 
import {Provider} from 'react-redux'; 
import {createStore, applyMiddleware} from 'redux'; 
import {Router, Route, IndexRoute, browserHistory} from 'react-router'; 
import reducers from './reducers'; 

import App from './components/app'; 
import Authenticate from './components/auth/index'; 
import Login from './components/auth/login'; 

ReactDOM.render(
    <Provider store={createStoreWithMiddleware(reducers)}> 
     <Router history={browserHistory}> 
      <Route path="authenticate"> 
       <IndexRoute component={Login} /> 
       <Route path="/login" component={Login}/> 
      </Route> 
      <Route path="/" component={App}> 
       <IndexRoute component={Login} /> 
      </Route> 
     </Router> 
    </Provider> 
    , document.querySelector('.container') 
); 
ReactDOM.render(
    <Provider store={createStoreWithMiddleware(reducers)}> 
     <Router history={browserHistory}> 
      <Route path="/authenticate" component={Authenticate}> 
       <IndexRoute component={Login} /> 
       <Route path="login" component={Login}/> 
      </Route> 
      <Route path="/" component={App}> 

      </Route> 
     </Router> 
    </Provider> 
    , document.querySelector('.container') 
); 

問題は、私はauthenticate/loginに移動するたびに、それは常にNo input file specified.を言っている:ここに私のコードです。しかし、/に移動しても正しく動作します。

すべての解決方法はありますか?

+0

Authenticateコンポーネントを正しくインポートしたことを確認し、browserHistoryをhashHistoryに変更してみます。 –

+0

@ShubhamKhatri私はimport文で質問を更新しました。ありがとう – ssuhat

答えて

2

こんにちは私は同じ問題を抱えていましたが、これは解決された解決策です。

リアクタは実際には実際のページを作成しません。 私の場合、コンパイルされたJSはindex.htmlにロードされましたが、/ loginに行くとindex.phpがロードされず、404が返されます。

エラー "入力ファイルが指定されていません。通常はUbuntu Ngnixのエラーです。

ソリューション

次のコード追加してNgnix設定ファイルを変更することができます:それは、サーバー>の場所に追加する必要があります

try_files $uri $uri/ /index.html$is_args$args; 

を。これは私の設定ファイルのようです:

server { 
    listen 80; 
    listen 443 ssl; 
    server_name yourownurl.com; 
    root "/home/vagrant/path/to/your/site"; 

    index index.html index.htm index.php; 

    charset utf-8; 

    location/{ 
     try_files $uri $uri/ /index.html$is_args$args; 
    } 
} 

これはいくつかの人々を助けてくれることを願っています。

関連する問題