用cakephp 3.9将所有404状态代码替换为200

ddhy6vgd  于 2022-11-11  发布在  PHP
关注(0)|答案(1)|浏览(139)

在前端,我有一个处理所有请求(包括404页)的SPA。
在后端,我使用CakePHP 3.9。我把它用作一个无头CMS。我想避免Cakephp返回一个404状态代码。相反,我想返回一个代码200,即使页面在后端“找不到”。我该怎么做呢?

avwztpqn

avwztpqn1#

可能更干净,但它很有效:

//edit file: \src\Controller\ErrorController.php
    public function beforeRender(Event $event)
    {
        //add this:
        if($this->response->getStatusCode() == 404){
            $this->response->statusCode('200');
        }
        parent::beforeRender($event);
        $this->viewBuilder()->setTemplatePath('Error');
    }

相关问题