在php中触发403,以便显示ErrorDocument

最近我为我的服务器设置了定制的错误文档.

我开始使用404页面,这就像一个魅力:未找到的文件自动显示指定的404.PHP页面.
但是,403我遇到了一些麻烦.我以同样的方式设置它,但我只得到一个空白页面.它不显示.htaccess文档中设置的403.PHP页面.
有任何想法吗?

这是我的代码

的.htaccess:

Options -Indexes
ErrorDocument 403 /403.PHP
ErrorDocument 404 /404.PHP

PHP

<?PHP 
header("HTTP/1.1 403 Unauthorized");
exit;
?>

解决方法

当服务器(Apache)遇到403错误时,服务器配置中定义的错误文档才会被加载.

如果您通过PHP强制执行错误,例如发送403状态代码,则会发生在PHP而非Apache中.

因此,当您已经知道我想呈现的网站将因未经授权而失败时,为什么要将它留给apache将会发生什么?

<?PHP 
header("HTTP/1.1 403 Unauthorized");
// either:
header("Location: /403.PHP");
// or:
include('403.PHP');
exit;
?>

I started with a 404 page and this works like a charm:

你确定吗?

你有脚本,发送404并重定向到404.PHP?或者你刚刚打开一个不存在的URI并被重定向

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...