nginx代理和404重定向

Kim*_* Yu 6 mod-rewrite proxy nginx amazon-s3 http-status-code-404

嗨,我想配置我的nginx服务器代理亚马逊S3并在apache中执行类似mod_rewrite的事情 - 如果亚马逊的代理是404(文件不存在于亚马逊上)然后将我重定向到我的本地文件.这可能吗?

这是我的nginx配置文件:

upstream app{
 server 127.0.0.1:3000;
}

server {
  listen 0.0.0.0:80;
  server_name www.mypage.com mypage.com;
  access_log /var/log/nginx/mypagecom.log;

  location /photos{
    proxy_set_header X-Real-IP $remote_addr;
    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_pass http://amazons3.mypage.com/photos;
    proxy_redirect off;
    error_page 404 /myerrorfile.jpg;
  }
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    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_pass http://app;
    proxy_redirect off;
  }


}
Run Code Online (Sandbox Code Playgroud)

谁能帮我 ?

Ser*_*sov 9

proxy_intercept_errors on;
Run Code Online (Sandbox Code Playgroud)

location /photos.然后,error_page 404 /myerrorfile.jpg即使404错误来自上游服务器,您的工作也会正常工作.