我已经购买了一个测试SSL证书,而我的客户获得了EV证书,并且我已经用Laravel 5.1项目设置了它。我一直使用.htaccess强制站点使用https://,但有时整个站点会中断,在出现以下错误后变得不可用:
"The operation couldn't be completed. Protocol Error." NSPOSIXErrorDomain:100其他人在Laravel项目中也遇到了这个问题,但是我还没有找到一个稳定的解决方案。
此错误仅在iOS和OSX下的Safari中发生。问题是Safari根本无法通过清除浏览缓存和cookie来从这个问题中恢复。
我需要帮助,因为在iOS或OSX上使用Safari的人在几分钟后就会失去网站上的所有访问者。
谢谢,安德烈
发布于 2015-12-13 19:55:11
老实说。由于在处理laravel时,我不建议在.htaccess文件中强制使用https。只需创建一个中间件,它将检查用户是否不在https上,并将其重定向。它在laravel 5.1上会工作得更好,我也认为这个问题会得到解决。
中间件示例:
class HttpsProtocol
{
public function handle($request, Closure $next)
{
if (!$request->secure()) {
return redirect()->secure($request->getRequestUri());
}
return $next($request);
}
}希望能有所帮助。这对我很有效:)祝你好运……
https://stackoverflow.com/questions/33466679
复制相似问题