Angularjs 使用nginx从S3提供单文件角度应用程序

Angularjs 使用nginx从S3提供单文件角度应用程序,angularjs,nginx,amazon-s3,Angularjs,Nginx,Amazon S3,我有一个Angular应用程序,它由一个index.html文件组成。其他文件只有main.css和一些图像资源。我已经重新发现,没有办法使用S3 web托管来提供服务,所以我尝试将nginx设置为代理。我以前做过这个,但那是几年前的事了,它没有角度应用程序和HTML5推送状态。这是我拥有的当前nginx配置服务器块 server { server_name foo.com; set $s3_bucket 'foo.com.s3.amazonaws.com';

我有一个Angular应用程序,它由一个index.html文件组成。其他文件只有main.css和一些图像资源。我已经重新发现,没有办法使用S3 web托管来提供服务,所以我尝试将nginx设置为代理。我以前做过这个,但那是几年前的事了,它没有角度应用程序和HTML5推送状态。这是我拥有的当前nginx配置服务器块

server {
    server_name foo.com;

    set $s3_bucket        'foo.com.s3.amazonaws.com';

    proxy_http_version     1.1;
    proxy_set_header       Host $s3_bucket;
    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;

    resolver               172.16.0.23 valid=300s;
    resolver_timeout       10s;

    location ~* ^/(assets|styles)/(.*) {
        set $url_full         '$1/$2';
        proxy_pass             http://$s3_bucket/live/$url_full;
    }

    location / {
        rewrite ^ /live/index.html break;
        proxy_pass http://$s3_bucket;
    }
}
我不会对这个配置做任何假设。这一切都可能是完全错误的

它确实“有效”。我可以去foo.com,网站提供服务,我可以导航,一切都会创造奇迹。但它不会加载任何不是/的URL。所有其他重定向到/这是一个问题

我做错了什么?谢谢你的帮助