javascript - 404 未找到页面 - reactjs
问题描述
我在服务器上上传了我的网站,我的网站运行良好。但我有一个问题。
A
当我从 route去 route 时B
,B
也会加载组件。但是当我复制我的B
组件 url 时,我得到了404 Not Found page
.
例如,当我复制/粘贴此网址时:
http://test.shadyab.com/offers/Arya-Ceremonial-Pool-VIP-off
我有一个404 Not Found page
.
我的路线:
import React from 'react'
import { Provider } from 'react-redux'
import { Router, Route, IndexRoute } from 'react-router'
import configureStore from 'store/configureStore'
import App from 'containers/App'
import Home from 'containers/Home'
import Detail from 'containers/Detail'
import Cart from 'containers/Cart'
import Login from 'containers/Login'
import Profile from 'containers/Profile'
import Category from 'containers/Category'
export default function(history) {
return (
<Router history={history}>
<Route path="/" component={App}>
<Route exact path="/offers/:id" component={Detail} />
<Route path="/cart/cart" component={Cart} />
<Route path="/login" component={Login} />
<Route path="/profile/:section" component={Profile} />
<Route path="/category/:city/:category" component={Category} />
<IndexRoute component={Home} />
</Route>
</Router>
)
}
我的app.js
:
import 'babel-polyfill'
import React from 'react'
import ReactDOM from 'react-dom'
import { browserHistory } from 'react-router'
import configureStore from 'store/configureStore'
import createRoutes from 'routes/index'
import { Provider } from 'react-redux'
import Immutable from 'immutable'
import _ from 'lodash'
let reduxState = {}
if (window.__REDUX_STATE__) {
try {
let plain = JSON.parse(unescape(__REDUX_STATE__))
_.each(plain, (val, key)=> {
reduxState[key] = Immutable.fromJS(val)
})
} catch (e) {
}
}
const store = configureStore(reduxState)
ReactDOM.render((
<Provider store={store}>
{ createRoutes(browserHistory) }
</Provider>
), document.getElementById('root'))
即使用户想刷新当前网页,也会收到 404 错误。
我的服务器语言是 php。
解决方案
您需要将服务器配置为始终index.html
为所有 url 提供文件。
这是如何在 NodeJS 中执行此操作的示例之一。
推荐阅读
- c# - 脚本仅适用于场景中的一个对象
- c - C中负数的环礁值
- shell - 如何使用詹金斯读取其中包含变量的文件
- nlp - 在 Spacy 中标记命名实体
- javascript - Javascript 手风琴 - 折叠除活动之外的所有打开实例
- mysql - MySQL 不接受 ISO 字符串作为 DATE
- scala - 如何在 kafka 主题中仅存储最新的键值
- java - 我正在从 java 中读取文本文件(逗号作为分隔符)
- javascript - 带有 react-redux 的日期选择器无法正常工作“预期的日期实例”
- angular - 使用 Angular Universal 进行热重载