2

コーダーの皆さん、こんにちは。

次の方法で、kernel.requestリスナーとしてリクエストルートベースのコントローラー上書き機能を作成しようとしました:

public function onKernelRequest(GetResponseEvent $event){

    $requested_uri = $event->getRequest()->getRequestUri();

    if($requested_uri == '/' || $requested_uri == '/index.php' || $requested_uri == '/index_dev.php'){
        $event->getRequest()->attributes->set('_controller', 'TestHomeBundle:Home:index');
    }   
}

ただし、Apache ログに次のエラーが表示されます。

PHP Fatal error:  Allowed memory size of 268435456 bytes exhausted (tried to allocate 39 bytes) in /vendor/symfony/symfony/src/Symfony/Component/Routing/Generator/UrlGenerlGenerator.php on line 182

以下の方法で登録しました。

 kernel.listener.homepage_rewrite_listener:
    class: Test\HomeBundle\EventListener\HomepageRewriteListener
    tags:
        - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest, priority: 35 }

主な問題は、これ以上のメモリを提供できないことです。どんなアイデアでも大歓迎です。前もって感謝します。

4

0 に答える 0