当我在本地运行项目时,一切都很完美。但是,当我在生产中部署项目时,每次使用POST方法提交表单时,我都会收到消息"由于不活动,页面已过期">。
关于这个问题有很多问题,我已经尝试了所有可能的解决方案:
1-我的表单包含令牌{{csrf_field()}}2-我更改了我的应用程序(app_name)的名称
会话驱动程序和缓存驱动器设置为"file"。
我听说存储文件可能不可写,这就是它存储会话的地方。如果我的项目部署在GCLoud(谷歌云平台)中,我不知道如何检查它。
感谢
更新1
我在Laracast上发布了我的问题,有人说当它不能在存储/会话文件上写入时就会发生这种情况。当我将我的项目部署到GCloud时,我不知道如何使它可由服务器写入。
我的composer.json文件现在有这样的配置:
"post-install-cmd": [
"Illuminate\Foundation\ComposerScripts::postInstall",
"php artisan optimize",
"chmod -R 755 bootstrap/cache"
]
更新2
现在,我将SESSION_DRIVER
更改为cookie
,它可以在生产中使用。
将app.yaml
中的SESSION_DRIVER
更改为cookie,如:
env_variables:
# Put production environment variables here.
APP_LOG: errorlog
APP_DEBUG: false
SESSION_DRIVER : cookie