php - Laravel SSL 协议(protocol)错误

标签 php laravel ssl nginx laravel-5

我已经购买了测试 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 的地方,我不建议在 .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);
    }
}

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

关于php - Laravel SSL 协议(protocol)错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33466679/

相关文章:

c++ - 将 PCCERT_CONTEXT 转换为 openssl 使用 - X509 结构或 ASN1

php - LDAP - 列出组

php - 添加一个整数到主键自动递增mysql php ajax

php - PHP 的谷歌日历 API 问题

php - 在 Laravel 中创建 mysql 帐户用户和数据库

tomcat - 找不到 spring-boot 可执行 war keystore

php - 如何使用 ssh2 列出其他服务器中目录的文件

php - Laravel:PDOException:找不到驱动程序

mysql - 无法将 mysql 与 laravel (docker) 连接

node.js - 蒙哥错误: self signed certificate in certificate chain