EC2 Nginx Reverse Proxy Angular S3 Bucket получает ошибку 404 Not Found - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть экземпляр EC2 с Nginx в качестве веб-сервера.У меня есть Angular 7 SPA, сидящий в ведре S3, который был правильно настроен для обслуживания веб-контента.У меня настроен обратный прокси-сервер Nginx, так что запрос к '/' будет обслуживаться Staic SPA в корзине S3.После небольшой настройки обратного прокси-сервера Nginx я смог запустить SPA и, кажется, работает правильно.

Проблема

В Chrome при просмотре вкладки сети в DevTools сетизапрос отображается как "404 Not Found" то же самое в Firefox.Таким образом, приложение, кажется, загружается и работает, но я думаю, что мне нужно что-то предпринять, чтобы учесть тот факт, что запрос возвращается как 404. Not Found.

В конце концов это будет Angular SPA, обслуживаемый из корзины S3с / api, что Nginx также обратит прокси к приложению Node Express, работающему на экземпляре EC2.

Файл, который, я думаю, будет иметь отношение к этому обсуждению, будет моим 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
}
...