所以我不断在我的实时服务器上收到此错误,但在我的本地主机上却没有,在我的本地主机上一切正常,但是当我在在线服务器上部署我的网站时,它一直给我这个错误
file_put_contents(C: ppname\storage ramework iews/27f511f5644086daa68b2cf835bf49f5148aba43.php): 无法打开流: 没有这样的文件或目录
我尝试过
php artisan config:cache
但没有任何效果
我想你的问题是由于 Laravel 配置缓存造成的。我建议你
为此,请在命令行上运行以下 Artisan 命令
如果您无法访问服务器上的命令行,您可以以编程方式执行命令,如下所示:
Route::get('/clear-cache', function() {
$exitCode = Artisan::call('config:clear');
$exitCode = Artisan::call('cache:clear');
$exitCode = Artisan::call('config:cache');
return 'DONE'; //Return anything
});
我希望这有帮助。
我猜测您使用了错误的路径,因此请尝试此操作以确保无论服务器如何,您都会拥有正确的路径:
$path = dirname(__FILE__);
file_put_contents($path.DIRECTORY_SEPARATOR.'27f511f5644086daa68b2cf835bf49f5148aba43.php');
这假设您正在尝试写入与运行此文件的代码文件相同的文件夹。
您还可以使用以下内容来准确确定每台服务器上的路径:
echo getcwd();
看起来您的存储/目录不可写。 Laravel 要求该目录可写。
如果您使用的是 Linux/Mac,请运行此
chmod 0755 存储/-R
希望有帮助。
我用这些命令解决了:
sudo chgrp -R www-data storage bootstrap/cache
sudo chmod -R ug+rwx storage bootstrap/cache
尝试使用下一个命令
"php artisan cache:clear"
将帮助您清除应用程序的缓存