【问题标题】:Disable direct access to nginx custom error page禁用直接访问nginx自定义错误页面
【发布时间】:2026-01-16 19:45:01
【问题描述】:

我有这个 nginx 块将所有 401,403 和 404 重定向到单个自定义错误页面

error_page 401 @errorPage;
error_page 403 @errorPage;
error_page 404 @errorPage;
location @errorPage {
    rewrite ^ /error.php?error=$status last;
}

如果直接调用,是否可以拒绝对error.php的访问?谢谢

【问题讨论】:

    标签: nginx nginx-location custom-error-pages


    【解决方案1】:

    考虑将错误页面存储在主 Web 文件夹之外并设置一个新的 rootalias

    location @errorPage {
      root /var/www/error-pages;
      ...
    }
    

    【讨论】:

    • 谢谢,我会采纳你的建议