React Router在带有PM2的Nginx反向代理上不起作用

时间:2019-04-24 21:57:31

标签: reactjs nginx pm2

我正在尝试托管一个React应用程序。 该应用程序可以在我的本地计算机(包括路由)上正常运行。 我上传了一个ubuntu nginx Web服务器。我曾担任pm2服务。 我在8080端口上配置为React应用程序的反向代理。它仅在主页上起作用。它无法路由任何反应路线。

例如,当浏览http://my_react_app/admin时,它将返回404 not found页面

这是我的ngninx default配置。

upstream react_app {
 server 127.0.0.1:8080;
 keepalive 64;
}

server {
    listen 80;
    listen [::]:80;

    server_name my_react_app;

    location / {
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Host $http_host;
      proxy_set_header X-NginX-Proxy true;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection “upgrade”;
      proxy_max_temp_file_size 0;
      proxy_pass http://react_app/;
      proxy_redirect off;
      proxy_read_timeout 240s;
   }

}

请帮助。

谢谢

1 个答案:

答案 0 :(得分:0)

使用pm2作为服务器时,请尝试以下命令:pm2 serve directory_name --spa。标记--spa用于服务单页应用程序。确保您的pm2版本为3.5.0。