React Router没有指定输入文件

时间:2016-08-29 04:39:40

标签: reactjs

我正在使用react-router将我的页面导航到auth页面。这是我的代码:

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.。但如果我导航到/它可以正常工作

任何解决方案?

1 个答案:

答案 0 :(得分:2)

嗨,我遇到了同样的问题,这是解决方案,可以满足。

React-router并没有真正创建真实的页面。 所以在我的情况下,我编译的JS是在我的index.html上加载的,但如果你去/ login,例如它没有加载你的index.php并给出404。

错误“未指定输入文件”。通常是Ubuntu Ngnix错误。

<强>解决方案

您可以通过添加以下代码来修改Ngnix配置文件:

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

应该在服务器中添加&gt;地点。这就是我的配置文件:

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;
    }
}

希望这可以帮助一些人。