nginx代理和404重定向
Posted
技术标签:
【中文标题】nginx代理和404重定向【英文标题】:nginx proxy and 404 redirect 【发布时间】:2012-01-06 21:45:29 【问题描述】:您好,我想将我的 nginx 服务器配置为 amazon S3 的代理,并在 apache 中执行类似 mod_rewrite 的操作 - 如果 amazon 的代理是 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;
谁能帮帮我?
【问题讨论】:
【参考方案1】:添加
proxy_intercept_errors on;
到location /photos
。那么即使 404 错误来自上游服务器,您的 error_page 404 /myerrorfile.jpg
也将正常工作。
【讨论】:
以上是关于nginx代理和404重定向的主要内容,如果未能解决你的问题,请参考以下文章