在Laravel 5.5 + Apache + MariaDB上,我们有一个企业系统,将经过身份验证的用户和公共用户分开。这两个URL在同一个域中,并带有其他子域。每个子域都有一个单独的Laravel 5.5实例。这两个子域都必须具有单独的app_key,db_database和.env文件中的其他几个参数。
现在,如果我在一个浏览器中打开这两个子域的两个不同选项卡,则一个肯定会失败并抛出高音 unserialize():偏移量0为40字节时出错
原因是,.env变量进入PHP超级全局变量和XSRF-TOKEN,Cookie名称发生冲突。
"same_site" => "strict"
,不走运php artisan key:generate
-尝试过,由于加密失败,它在其他子域上失败。VerifyCsrfToken.php
排除将不起作用,因为laravel Kernel首先加载EncryptCookies::class
,随后加载VerifyCsrfToken::class
php artisan serve
上不存在此问题,因为从逻辑上讲,对于子域,我们运行两个工匠实例,它们永不冲突更新:在标记重复和发布URL之前,请先阅读问题。我认为我没有留下任何未读的URL。 :):)