robsonvleite / router

A classic CoffeeCode Router is easy, fast and extremely uncomplicated. Create and manage your routes in minutes! (Crie, gerencie, agrupe e execute manipuladores ou controladores com transporte de dados via rotas da aplicação)
https://www.upinside.com.br
MIT License
178 stars 43 forks source link

Comportamento estranho do router ao utilizar junto ao Hestia Panel #52

Closed Leandro-Reis closed 1 year ago

Leandro-Reis commented 2 years ago

Percebi um comportamento estranho ao utilizar o router junto ao Hestia panel. Meu código funciona perfeitamente no ambiente local (xampp), mas quando utilizo em uma maquina linux com o painel hestia configurado as rotas param de funcionar. O mais interessante é que rotas simpes ex: meusite.com/exemplo funciona mas rotas agrupadas não funcionam ex: meusite.com/json/response. No ambiente local funciona normalmente, tanto no xampp quanto em uma vm linux rodando apache e php. Posso simplesmente usar o apache configurado na mão mas o hestia facilita muito as coisas.

OBS: Testei tudo com php 8.0 e 8.1.

Tem alguma dica?

robsonvleite commented 2 years ago

Hey, verifique se o rewrite engine está ON no seu apache, e se não esqueceu de dar deploy no htaccess do projeto 👊

Leandro-Reis commented 2 years ago

Olá. sim o rewrite engine está on e o Htaccess está funcionando.

É estranho porque o erro que eu recebo é 405 "ERR_TOO_MANY_REDIRECTS". Como eu falei parece que é algo relacionado com o Hestia panel, pois se eu configurar a maquina sem o Hestia funciona perfeitamente. Posso tentar montar uma vm e postar para reproduzir o ambiente.

Leandro-Reis commented 1 year ago

Fiz outros testes hoje. Configurei o servidor sem o hestia panel e o erro permanece ou seja não é o hestia. Pude notar que o router só não funciona quando estou usando https com certificados gerados pelo letsencrypt. Após confirar os certificados obtive o mesmo resultado, rotas simples funcionam e rotas agregadas retornar erro 405 "ERR_TOO_MANY_REDIRECTS". Já, tecnicamente era pra estar funcionando.

dxofc commented 1 year ago

Fiz outros testes hoje. Configurei o servidor sem o hestia panel e o erro permanece ou seja não é o hestia. Pude notar que o router só não funciona quando estou usando https com certificados gerados pelo letsencrypt. Após confirar os certificados obtive o mesmo resultado, rotas simples funcionam e rotas agregadas retornar erro 405 "ERR_TOO_MANY_REDIRECTS". Já, tecnicamente era pra estar funcionando.

Esse problema está no autoload, verifica seu composer.json se a psr4 está com a primeira letra maiuscula. Exemplo : "App\": "App/"

Se não estiver, esse é o motivo pelo erro 405.

Leandro-Reis commented 1 year ago

Finalmente entendi o problema.

Meu controller tem o nome de Json.php com J maiusculo. No meu repositorio local o nome estava correto mas no repositorio remoto (Gitlab), ele ficava como json.php. Não importava quantas vezes eu apagava e recriava o arquivo, toda vez que fazia um push ele ia para o servidor do gitlab como json.php. Tive que entrar na interface web do gitlab e excluir o arquivo, então criei novamente no repo local e fiz um push, dai foi com o nome correto Json.php.

Um bug simples, mas me fez quebrar a cabeça pra resolver. kkk