4

我们使用 Zend Framework 2 并toRoute在我们的控制器中使用以重定向到不同的位置,例如$this->redirect()->toRoute('home');.

无论如何使用此方法或替代方法将此重定向到 https 而不是 http?

谢谢!

4

1 回答 1

1

为了https在您的路线中使用,您需要使用Zend\Mvc\Router\Http\Scheme路由器。为此类路由指定配置与其他路由没有太大区别。您需要在 module.config.php 中的路由器配置中指定路由类型Scheme并添加一个选项。'scheme' => 'https'

这是一个例子:

return array(
    'router' => array(
        'routes' => array(
            'routename' => array(
                'type' => 'Scheme', // <- This is important
                'options' => array(
                    'route' => '/url',
                    'scheme' => 'https', // <- and this.
                    'defaults' => array(
                        '__NAMESPACE__' => 'MdlNamespace\Controller',
                        'controller' => 'Index',
                        'action' => 'someAction',
                    ),
                ),
            ),
            // the rest of the routes
        ),
    ),
    // the rest of the module config
);

如果你有routename像上面那样配置的路由,这:$this->redirect()->toRoute('routename');将工作。

有关ZF2 手册的参考,请参阅此内容。

希望这可以帮助 :)

斯托扬

于 2013-04-04T07:25:04.680 回答