Rota do artesão do Laravel: cache causa exceção de dados incorretos

9

Executando o comando: php artisan route:cacheproduz a seguinte execução:

Erroneous data format for unserializing 'Symfony\Component\Routing\CompiledRoute'

Em execução: php artisan route:clearcorrige

Gostaria de saber como corrigir isso para que eu possa armazenar minhas rotas em cache.

Nate
fonte
11
Remova todos os fechamentos (funções em linha) nas rotas, se houver.
jsHate
Não tenho fechamentos no meu arquivo de rotas
Nate
Enfrentando o mesmo problema, sem fechamentos nas rotas.
nwaweru 6/01
Estou enfrentando o mesmo problema. Você encontrou uma solução alternativa que poderia compartilhar?
The Unknown Dev
Ainda não, estou planejando reclinar para um novo diretório e ver o que acontece
Nate

Respostas:

2

Depois de um monte de descobrir as coisas. Eu descobri que o Apache2 ainda estava usando uma versão mais antiga do PHP, mesmo que a versão da CLI estivesse atualizada.

Após desinstalar todas as versões mais antigas do php e reconfigurar o Apache2 para usar a versão mais recente, esse problema foi corrigido.

Nate
fonte
1

Isso funcionou para mim

php artisan optimize:clear
php artisan config:clear
php artisan config:cache
composer dump-autoload 
Vishnu Damwala
fonte
Infelizmente, isso não funcionou.
Nate
1

Espero que você esteja usando a mesma versão php para CLI e também para o projeto. Também o cache de roteamento do PHP 7.4 não funciona com o php 7.3.

Subtain Ishfaq
fonte
0

basta remover o espaço em branco entre a linha do seu percurso.

php artisan optimize:clear
php artisan optimize
Riko Pramayudi
fonte
11
Como a remoção de linhas em branco ajudaria em um arquivo de rotas?
Nate
0

Ao tentar atualizar o Laravel, o mesmo problema surgiu. A única maneira que me ajudou foi fazer o downgrade da versão do symfony / routing para a v4.2.0 (eu tinha a v 4.4.3)

composer require symfony/routing:v4.2.0

Mykola
fonte
Tentei fazer o downgrade do symfony / routing para a v4.2.0 para ver se isso ajudaria, mas não consegui, pois a versão do symfony / routing era muito baixa para a versão atual do Laravel (6.9.0).
Nate