首页 > 解决方案 > EC2 Nginx 反向代理 Angular S3 Bucket 得到 404 Not Found 错误

问题描述

我有一个使用 Nginx 作为 Web 服务器的 EC2 实例。我有一个位于 S3 存储桶中的 Angular 7 SPA,它已正确设置为提供 Web 内容。我设置了 Nginx 反向代理,以便 S3 存储桶中的 staic SPA 提供对“/”的请求。在对 Nginx 反向代理进行了一些配置之后,我能够获得 SPA 服务并且似乎工作正常。

问题

在 Chrome 中查看 DevTools 中的网络选项卡时,网络请求在 Firefox 中显示为“404 Not Found”。所以应用程序似乎正在加载和工作,但我认为我需要做一些事情来解决请求返回为 404 Not Found 的事实。

最终,这将是一个从 S3 存储桶提供的 Angular SPA,它带有一个 /api,Nginx 还将反向代理到在 EC2 实例上运行的 Node Express 应用程序。

我认为与本次讨论相关的文件是我的 Nginx default.conf,如下所示。

server {
    server_name  idlewildeave.com;

    location / {
    #    root   /usr/share/nginx/html;
    #    index  index.html index.htm;
        proxy_http_version     1.1;
        proxy_set_header       Connection '';
        proxy_set_header       Host ng4app.s3-website-us-west-2.amazonaws.com;
        proxy_set_header       Authorization '';
        proxy_hide_header      x-amz-id-2;
        proxy_hide_header      x-amz-request-id;
        proxy_hide_header      Set-Cookie;
        proxy_ignore_headers   'Set-Cookie';
        proxy_buffering        off;
        proxy_intercept_errors on;
        proxy_redirect         off;
        proxy_pass             http://ng4app.s3-website-us-west-2.amazonaws.com;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/xxxx/xxxx.com/xxxx; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/xxxx/xxxx.com/xxxxx; # managed by Certbot
    include /etc/letsencrypt/xxxx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/xxxx.pem; # managed by Certbot
}

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

    listen       80;
    server_name  idlewildeave.com;
    # return 404; # managed by Certbot
}

标签: nginxamazon-s3amazon-ec2reverse-proxy

解决方案


推荐阅读