Google App Engine PHP 将 x 框架选项设置为同源

Google App Engine PHP setting x frame options to same origin

我做了一个应用程序,最近通过了渗透测试。我需要将应用程序中的 X-Frame 选项设置为 SAMEORIGIN。这是为了防止点击劫持。我相信这在 App.yaml 文件中是可能的,但我不确定如何实现这样的事情。我已经扫描了文档,仍然不知道如何拒绝,只允许。

handlers:
    - url: /.*
          script: public/index.php
          http_headers:
            X-Frame-Options SAMEORIGIN

我在 Laravel 5.1

中找到了使用中间件的解决方案

中间件叫做FrameGuard,存放在下面

Illuminate\Http\Middleware\FrameGuard

要启用此功能,请将以下行添加到受保护的中间件数组

'Illuminate\Http\Middleware\FrameGuard',

这会将帧头选项设置为 SAMEORIGIN,如果需要可以更改。

这可以防止 Laravel 应用程序中的点击劫持漏洞

对于遇到此问题的任何人,http_headers 不起作用的原因是因为它只能应用于静态文件处理程序,如 mentioned in the doc.:

Optional. You can set HTTP headers for responses of your static file or directory handlers. If you need to set HTTP headers in your script handlers, you should instead do that in your app's code.