配置Nginx将所有404错误重定向到默认的Nginx错误页面

时间:2020-07-24 13:44:56

标签: nginx

我在EC2实例上的docker容器上有一个正在运行的应用程序,并且在它前面有一个ALB

该应用程序正在监听端口 8080 ,因此可以从浏览器 http:// {{ec2_instance_public_ip}}:8080 / app

访问该应用程序

现在我在同一EC2实例上安装了Nginx,以将任何404错误重定向到默认的nginx错误页面

我做了以下配置

server {
listen       80;
listen       [::]:80;
server_name  _;

error_page 404 /404.html;
    location = /404.html {
        root /usr/share/nginx/html;
        internal;
    }

error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
        internal;
    }
}

例如,当我尝试访问 http:// {{ec2_instance_public_ip}} /错误页面时,我从Nginx获取错误页面

但是当我尝试 http:// {{ec2_instance_public_ip}}:8080 时,我得到了应用程序错误页面

,当 http:// {{ec2_instance_public_ip}}:8080 / app / errorpage 时,我被重定向到http:// {{ec2_instance_public_ip}}:8080 / app主页

如果 http:// {{ec2_instance_public_ip}}:8080 / app / 上出现任何不正确的页面或404错误,我想要的是被重定向到Nginx错误页面

我想我需要配置一下,如果遇到404错误,我首先要重定向到端口80(Nginx端口),但我不知道如何

可以帮忙吗? 非常感谢

1 个答案:

答案 0 :(得分:0)

在我的案例中,我发现了一种比nginx更容易配置错误页面的方法。

我使用AWS Cloudfront来配置我的错误页面

您可以引用此URL https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages-procedure.html