在 digitalocean Droplet axios 请求上反应应用程序在其他机器上不起作用

Mag*_*pen 5 webserver reverse-proxy nginx http-status-code-404 reactjs

大家好,我在桌面上打开我的网站时遇到问题。在我创建应用程序并执行所有代码的笔记本电脑上,我的 React 应用程序工作正常并更新,但是在其他计算机上,只有我的组件/元素加载,而我的 axios 请求正在返回(404 连接拒绝错误)。有什么提示或修复吗?PS 这是我第一次尝试将应用程序构建部署到网络服务器(digitalocean/NGINX)。

NGINX 配置文件

    server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/epenn92reactapp.space/html/among-us-reactapp3/client/buil>
        index index.html index.htm index.nginx-debian.html;

        server_name epenn92reactapp.space www.epenn92reactapp.space;

        error_page 405 =200 $uri;
        error_page 404 /index.html;

        location ^~ /assets/ {
                gzip_static on;
                expires 12h;
                add_header Cache-Control public;
  }

        location /v1/api {
                proxy_http_version 1.1;
                proxy_cache_bypass $http_upgrade;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_pass http://64.227.5.159:8080;
                try_files $uri /index.html;
}

    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/epenn92reactapp.space/fullchain.pem; >
    ssl_certificate_key /etc/letsencrypt/live/epenn92reactapp.space/privkey.pem>
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}

    server {
        if ($host = www.epenn92reactapp.space) {
        return 301 https://$host$request_uri;
        } # managed by Certbot

        if ($host = epenn92reactapp.space) {
        return 301 https://$host$request_uri;
        } # managed by Certbot
        listen 80;
        listen [::]:80;

        server_name epenn92reactapp.space www.epenn92reactapp.space;
        return 404; # managed by Certbot
}
Run Code Online (Sandbox Code Playgroud)

axios 路由示例

    const [chars, setChars] = useState([]);
    useEffect(() => {

    const fetchData = async () => {
      try {
        let res = await axios.get('http://localhost:8080/api/v1/character', {
        });
        setChars(res.data)
      }
      catch (err) {
        console.log('error', err)
      }
    };
    fetchData();

  }, [chars.length]);
Run Code Online (Sandbox Code Playgroud)

服务器.js 文件

    const PORT = process.env.PORT || 8080
Run Code Online (Sandbox Code Playgroud)

包.json

    "proxy": "http://localhost:8080/"
Run Code Online (Sandbox Code Playgroud)

我已经阅读了大约一天,我只是不确定该怎么做,任何帮助都会非常感谢!