我正在使用Laravel的开发版本(4.1。*),并且有一个我不想要的新默认配置:X-Frame-Options: SAMEORIGIN
暂时我将其停用by deleting one line in Illuminate\Http\FrameGuard.php
我正在寻找更好的解决方案。我试过了filtre.php文件:
App::after(function($request, $response) {
$response->header('X-Frame-Options', 'ALLOW-ALL');
});
但它只是添加了选项(X-Frame-Options:ALLOW-ALL, SAMEORIGIN
),而我需要覆盖。
答案 0 :(得分:24)
Laravel不提供任何配置来禁用此功能。
根据Taylor Otwell,绕过它的唯一方法是在开始文件中添加以下行:
App::forgetMiddleware('Illuminate\Http\FrameGuard');
肮脏的解决方案是评论guilty line:
$response->headers->set('X-Frame-Options', 'SAMEORIGIN', false);
编辑(2014年1月29日):Taylor Otwell on GitHub关于Laravel政策的新信息。
默认情况下在4.2中删除它。应该在后过滤器中 - 将离开FrameGuard类,以便人们可以根据需要手动添加中间件。
答案 1 :(得分:5)
header
方法的第三个参数应该满足您的需求。