【问题标题】:Laravel SSL Protocol ErrorLaravel SSL 协议错误
【发布时间】:2016-02-01 16:34:31
【问题描述】:

我购买了一个测试 SSL 证书,而我的客户获得了 EV 证书,并且我使用 Laravel 5.1 项目设置了它。我一直使用 .htaccess 强制该站点使用https://,但有时整个站点会在出现此错误后中断并变得无法使用:

"The operation couldn't be completed. Protocol Error." NSPOSIXErrorDomain:100

其他人在使用 Laravel 项目时遇到了这个问题,但我一直无法找到稳定的解决方案。

https://www.litespeedtech.com/support/forum/threads/solved-ls-5-0-stable-protocol-error-with-ssl-sites.11459/

此错误仅在 iOS 和 OSX 下的 Safari 中发生。问题是 Safari 仅通过清除浏览缓存和 cookie 根本无法从这个问题中恢复。

我需要这方面的帮助,因为几分钟后,我失去了网站上所有在 iOS 或 OSX 上使用 Safari 的访问者。

谢谢, 安德烈

【问题讨论】:

  • 为什么你认为这是 Laravel 相关的,而不是 Safari 相关的?
  • 建议你去掉 nginx 标签

标签: php laravel ssl nginx laravel-5


【解决方案1】:

说实话。由于在处理 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);
    }
}

希望对您有所帮助。 它对我很有用:) 祝你好运......

【讨论】:

    猜你喜欢
    • 2015-11-27
    • 1970-01-01
    • 2019-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-14
    • 2017-01-22
    • 2017-04-29
    相关资源
    最近更新 更多