我们正在使用Zend Framework 2并在控制器中使用toRoute
重定向到各个位置,例如$this->redirect()->toRoute('home');
。
无论如何使用此方法或替代方法将此重定向重定向到https而不是http?
谢谢!
答案 0 :(得分:1)
要在路线中使用https
,您需要使用Zend\Mvc\Router\Http\Scheme
路由器。指定此类路由的配置与其他路由没有太大区别。您需要将路由类型指定为Scheme
,并在module.config.php中的路由器配置中添加选项'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');
将有效。
请参阅this以获取ZF2手册的参考。
希望这会有所帮助:)
斯托