刚刚在托管上移动了laravel项目,它说:
production.ERROR:带有消息的异常'ErrorException' “file_put_contents(/Users/max/sites/evocate.dev/storage/framework/sessions/7f7df88c52734c34a3f89286dc74d517d446c4fd): 无法打开流:没有这样的文件或目录 /home/f/fb7929gh/evocate2/vendor/compiled.php:6440
为什么需要我的本地主机路径以及我可以在哪里解决此问题?
答案 0 :(得分:2)
您应该确保此目录存在,并且您对此目录具有有效的文件权限
答案 1 :(得分:2)
在 sessions
内的适当权限下创建目录 storage/framework
您可以在Ubuntu中使用terminal命令创建目录:
sudo mkdir storage/framework/sessions
或者您可以直接在 project-root-folder/storage/framework/sessions
同时检查**storage**
和**bootstrap**
是否拥有完整的写入权限。 777
或775
答案 2 :(得分:0)
此问题归因于Laravel Configuration Caching。您通常应该运行
php artisan config:cache
命令作为生产部署例程的一部分。我建议你
为此,请在命令行上运行以下Artisan命令
如果您无权访问服务器上的命令行,则可以programmatically execute commands像这样:
Route::get('/clear-cache', function() {
$exitCode = Artisan::call('config:clear');
$exitCode = Artisan::call('cache:clear');
$exitCode = Artisan::call('config:cache');
return 'DONE'; //Return anything
});
我希望这会有所帮助。