Laravel 5 show ErrorException file put contents не удалось открыть поток: нет такого файла или каталога (ОС Windows)
у меня есть проект на Laravel 5, и я работаю с ним в офисе и дома тоже. Он отлично работает, но недавно дома он перестал работать. Laravel покажите мне два ErrorException
file_put_contents(G:projectstorageframeworkviews/751d8a0fd8a7d4138c09ceb6a34bb377aa2d6265.php): failed to open stream: No such file or directory
и
file_put_contents(G:projectstorageframework/sessions/aIXycR4LIAUBVIqZu0T590paOMIpV8vfZGIroEp0): failed to open stream: No such file or directory
.
Я ищу решение проблемы с Google и найти информацию о правильных правах. Все советы о Linux, но я работаю в Windows в офисе и дома тоже.
когда я пытаюсь очистить приложения кэш и посмотреть кэш, artisan talk to me -...очищенный. Но данные и представления кэша присутствуют в хранилище.
Как я могу исправить эту проблему?
спасибо заранее!
7 ответов
лучший способ решить эту проблему-перейти в каталог "laravel / bootstrap / cache" и удалить конфигурацию.PHP-файл. или вы можете переименовать его, как config.РНР.старый И ваша проблема будет исправлена. Счастливое кодирование: -)
после некоторых исследований я понимаю - у меня очень похожие, но разные корневые местоположения проекта и его кэширование в /bootstrap/cache
. После запуска проекта очистки кэша. Спасибо всем авторам answear!
Это типа вопрос обычно возникает при переносе одного сервера на другой, одной папки в другую. Laravel сохраняет кэш и конфигурацию (имя файла), когда папка отличается, то эта проблема возникает.
решение выполните следующую команду:
php artisan config:cache
https://laravel.com/docs/5.6/configuration#configuration-caching
обычно вы должны запускать php artisan config:cache
команда как часть рабочей процедуры развертывания. Я предлагаю вам
- удалить файл кэша конфигурации
- очистить кэш приложения
- создайте файл кэша для более быстрой загрузки конфигурации
для этого выполните следующие команды Artisan в командной строке
-
php artisan config:clear
php artisan cache:clear
php artisan config:cache
если у вас нет доступа к командной строке на вашем сервере, вы можете программно выполнять такие команды:
Route::get('/clear-cache', function() {
$exitCode = Artisan::call('config:clear');
$exitCode = Artisan::call('cache:clear');
$exitCode = Artisan::call('config:cache');
return 'DONE'; //Return anything
});
Я надеюсь, что это полезно.
возможно, есть проблема с файлом composer. Вы можете попробовать:
- composer install устанавливает пакеты поставщика в соответствии с композитор.lock (или создает composer.блокировка если нет),
композитор обновление всегда восстанавливает композитора.блокировка и установка последние версии доступных пакетов на основе composer.в JSON
дамп-Автозагрузка композитор не будет загружать вещь. Он просто регенерирует. список всех классов, которые необходимо включить в проект (autoload_classmap.РНР.) Идеально, когда у вас есть новый класс внутри вашего проекта. В идеале вы выполняете composer dump-autoload-o, для более быстрая загрузка веб-страниц. Единственная причина, по которой это не по умолчанию, заключается в том, что требуется немного больше времени для генерации (но только немного заметно)
причиной этой проблемы являются файлы кэша в localhost. В соответствии с этим я пробовал несколько вещей следующим образом, чтобы очистить кэш в моем проекте, но каждый раз я терпел неудачу.
- попытался очистить команды cahe, изменив web.php файл (с кодами artisan)
- пытался очистить кэш, подключив SSH (через PUTTY)
- пытался разместить мой проект в поддомене внутри create a new общественные каталог
Я нашел решение для этой проблемы после каждого вышеуказанного шага не удалось, и это сработало для меня отлично. Я удалил кэш.в PHP на host_route/bootstrap / cache.
Я думаю, что этот ответ поможет вашу проблему.
у меня были похожие проблемы из-за .gitignore для /storage
папка на первой машине, затем клонированный репозиторий на второй машине и laravel была ревизией для записи кэша сеансов
Итак, вручную создаем папку /storage/sessions
может быть решение..