【发布时间】:2012-11-09 03:41:27
【问题描述】:
我正在使用Redirect 类将未登录的用户发送到登录页面,并带有 401 状态码:
return Redirect::to('login', 401);
这会发送正确的位置标头,但状态代码设置为 302。
我一直追踪到 Response 的基类
laravel/vendor/Symfony/Component/HttpFoundation/Response.php
它正在调用:
$this->setStatusCode($status);
使用正确的 401 代码。
我也尝试过转储对象:
var_dump( Redirect::to('login', 401)->foundation );
我可以看到受保护的statusCode 属性已正确设置为 401。
不过,生成的响应的 HTTP 状态代码设置为 302。
什么给了?是不是我用错了?
P.S.我也posted this on Laravel's forums,无济于事。
【问题讨论】:
-
您正在开发什么操作系统(和服务器)?
-
在此重定向之后是否还有其他不明显的重定向? 401 可以工作,然后 302 重定向在此之后跳入并进行重定向......在这里抓住稻草
标签: php redirect header laravel