我在一家网上商店工作,购物车存储在会话中。我注意到在将一定数量的不同项目添加到购物车后,当我想添加更多(不同项目)时,我开始收到 502 条回复。我正在使用 Laravel,并且该站点是通过 Laravel Forge(使用 Nginx)托管的。我正在使用 cookie 来存储会话。
.env
SESSION_DRIVER=cookie
我找到了很多建议的解决方案,但没有一个对我有用。
我同时找到了这个问题的解决方案(见下面的答案)。我问这个问题不是因为我需要帮助,而是因为我想帮助其他在这个问题上挣扎的人,因为这花费了我很多时间。
根据 StackOverflow 联合创始人之一的这篇博文,我们积极鼓励提出问题只是为了自己回答:https://stackoverflow.blog/2011/07/01/its-ok-to-ask-and-answer-your-own-questions/。
答案 0 :(得分:0)
我的问题的解决方法是选择不同的会话驱动程序。该问题似乎与浏览器实现的 cookie 的限制有关:https://github.com/laravel/framework/issues/18112
所以我改用文件来存储会话。
.env
SESSION_DRIVER=file
但这并没有立即起作用。它仅在我通过 ssh 连接到服务器并运行以下命令后才开始工作:
composer dump-autoload
php artisan config:clear
php artisan cache:clear
(另外,我清除了在浏览器中为此站点存储的所有 cookie。)