zf2骨架应用程序,将所有内容转换为https
我想知道是否有一种快速方法可以将基于zf2框架的现有zend framework 2应用程序转换为完整的zf2骨架应用程序,将所有内容转换为https,http,security,https,zend-framework2,Http,Security,Https,Zend Framework2,我想知道是否有一种快速方法可以将基于zf2框架的现有zend framework 2应用程序转换为完整的https?现在一切都在http包含ajax请求可能不是完美的解决方案,但是这里有一些具有一些特性的模块 希望有帮助 最简单、最安全的方法之一是将http的所有传入流量/请求永久重定向到https 您可以通过为端口80向虚拟主机添加重定向规则来实现这一点。查看有关如何执行此操作的详细信息 您应该考虑关于这个主题的帖子安全> StExchange。com /代码>。此StackExcha
https
?现在一切都在http
包含ajax请求可能不是完美的解决方案,但是这里有一些具有一些特性的模块
希望有帮助 最简单、最安全的方法之一是将
http
的所有传入流量/请求永久重定向到https
您可以通过为端口80向虚拟主机添加重定向规则来实现这一点。查看有关如何执行此操作的详细信息
您应该考虑关于这个主题的帖子<代码>安全> StExchange。com /代码>。此StackExchange站点不是解决此类安全问题的合适位置。
我在一个使用多个站点(一些是http,另一些是https)的项目上做了这项工作 在module.config中,需要向onBootstrap函数添加路由侦听器use Zend\Mvc\MvcEvent;
...
$eventManager = $event->getApplication()->getEventManager();
$eventManager->attach(MvcEvent::EVENT_ROUTE, array($this, 'onRoute'), -100);
public function onRoute(MvcEvent $event)
{
$uri = $event->getRequest()->getUri();
$scheme = $uri->getScheme();
if ($scheme !== 'https') {
$uri->setScheme('https');
$response = $event->getResponse();
$response->getHeaders()->addHeaderLine('Location', $uri);
$response->setStatusCode(302);
$response->sendHeaders();
$event->stopPropagation(true);
}
}
并添加onRoute函数
use Zend\Mvc\MvcEvent;
...
$eventManager = $event->getApplication()->getEventManager();
$eventManager->attach(MvcEvent::EVENT_ROUTE, array($this, 'onRoute'), -100);
public function onRoute(MvcEvent $event)
{
$uri = $event->getRequest()->getUri();
$scheme = $uri->getScheme();
if ($scheme !== 'https') {
$uri->setScheme('https');
$response = $event->getResponse();
$response->getHeaders()->addHeaderLine('Location', $uri);
$response->setStatusCode(302);
$response->sendHeaders();
$event->stopPropagation(true);
}
}
这将强制所有http请求重定向到https
我希望这有帮助