服务器响应码/http状态码(101、200、404等)应该在用户和服务器之间的每次交互中以标头形式发送。如何从PHP监视代码,以便如果发送错误代码,它可以链接到web应用程序记录的用户操作,并适当地响应,例如通过锁定或重定向用户,通过尝试访问服务器上他们不应该访问的东西而获得重复的403(禁止)代码?
检查http_response_code
:
*如果你没有传递参数,那么http_response_code将获得当前状态码。如果你传递一个参数,它将设置响应代码。*
http://php.net/manual/en/function.http-response-code.php基本上没有,因为在 PHP文件被解析和生成"真实"输出之前,web服务器发送了报头。您可能会使用http_response_code()
方法,但考虑到这一点:如果您想访问一个文件夹,您的www-data
没有读权限,您将获得403 Forbidden
。它是web服务器的消息,PHP甚至不会被触及(因为,对于web服务器来说,它甚至不存在)。
捕获这些事件的唯一方法是,如果您在配置中特别使用自定义ErrorDocument
,或者响应代码由PHP文件发送:
if ( !$something )
header("HTTP/1.1 403 Forbidden");