子域特定的配置。浏览器,缓存,Cookie,CSRF令牌

时间:2019-06-20 08:09:01

标签: laravel-5 environment-variables subdomain

在Laravel 5.5 + Apache + MariaDB上,我们有一个企业系统,将经过身份验证的用户和公共用户分开。这两个URL在同一个域中,并带有其他子域。每个子域都有一个单独的Laravel 5.5实例。这两个子域都必须具有单独的app_key,db_database和.env文件中的其他几个参数。

现在,如果我在一个浏览器中打开这两个子域的两个不同选项卡,则一个肯定会失败并抛出高音 unserialize():偏移量0为40字节时出错

原因是,.env变量进入PHP超级全局变量和XSRF-TOKEN,Cookie名称发生冲突。

  • 我尝试使用其他env变量,但仍然失败。
  • 尝试过Session.php-"same_site" => "strict",不走运
  • 成为公共站点不能禁用X-CSRF
  • 试图在laravel中重命名cookie名称,没有运气。
  • php artisan key:generate-尝试过,由于加密失败,它在其他子域上失败。
  • VerifyCsrfToken.php排除将不起作用,因为laravel Kernel首先加载EncryptCookies::class,随后加载VerifyCsrfToken::class
  • php artisan serve上不存在此问题,因为从逻辑上讲,对于子域,我们运行两个工匠实例,它们永不冲突

更新:在标记重复和发布URL之前,请先阅读问题。我认为我没有留下任何未读的URL。 :):)

0 个答案:

没有答案