主页

react 部署到远程服务器之后,访问 mysite.com 导致404错误

2023-11-01 05:31PM

react 部署到远程服务器之后,直接访问reactjs的路径,会提示 404 not found.

我的react项目,在本地运行的时候,可以直接访问localhost:3000/articles,但是在部署到远程的服务器后,
远程的域名为mysite.com, 此时可以直接访问该域名,但是在打开mysite.com/articles页面之后,重新刷新页面就会显示错误提示: 404 not found

这通常是因为Nginx不了解React的前端路由。

要解决这个问题:

1. 需要在Nginx配置中添加一个规则,以便将所有请求转发到React应用程序的入口点。

server {
  listen       80;
  server_name  mysite.com;
  charset utf-8;

  root /tmp/build; # 替换为您的React应用程序构建后的路径

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

location /块使用try_files指令来尝试查找与请求路径匹配的文件。如果找不到文件,则将请求转发到index.html,这是React应用程序的入口点。

2. 重启 nginx

停止

nginx -s stop

启动

nginx

然后在浏览器再重新打开页面,就可以了。 

返回>>

登录

请登录后再发表评论。

评论列表:

目前还没有人发表评论