[RESOLVIDO] Em produção, não acessa Menu, somente aplicações individuais...

Olá a todos!

Começando a pouco com Scriptcase. Até o momento, sem muitos sobressaltos, consegui fazer tudo o que pretendia. Quando decidi publicar em um server linux, na Linode, começaram as dificuldades.

A publicação avançada, desisti. Criei no raiz do servidor web(/var/www), uma pasta prod, com o ambiente de produção, e uma no mesmo nível, com o projeto. Tudo configurado, Php 5.6, MySql e Apache, sem problemas. Acesso o ambiente de produção, configuro a conexão, também sem problemas. O aplicativo, não funciona de forma nenhuma. Sempre com erro 500. Testei várias vezes republicando a aplicação, mudando o endereço das pastas, e nada.
Desisti, e fui para a publicação simplificada.

Neste ponto, também, tudo funcionando, em relação a configuração. Conexão, fuso horário, etc. Mas novamente, o aplicativo não funciona.

Tentei de forma individual. Ao invés de tentar acessar pela aplicação principal, que no meu caso é um menu, chamado menuPrincipal, tentei de forma individual, informando no navegador os nomes de grids individuais, como por exemplo, grid_fornecedores. Qual foi a minha surpresa, ao ver que todos as aplicações funcionam perfeitamente, acessando a base de dados, com todas as cutomizações do tema, sem problemas. Só não funciona, e acusa este erro 500, quando tento acessar pelo menu principal…

Alguém com experiência, e mais anos de estrada com Scriptcase, pode me indicar o caminho para resolver isso ?

Desde já, agradeço.

Erro 550, por vezes, é erro de permissão.
Quando digo permissão, é preciso entender que conforme o php seja carregado como módulo, cgi ou etc.
Você além de setar com uso de chmod os arquivos. Tem que setar o usuário e grupos com chown.
Verifique pelo shell ou cliente ftp se todas as apps que funcionam e a que não funciona tem as mesmas permissões de arquivo, usuário e grupo.
Se não estiver com a mesma configuração. Deixe a aplicação que não funciona igual as que funcionam.
Veja se isto ajuda:
https://suporte.scriptcase.com.br/index.php?/Knowledgebase/Article/View/442/32/consertando-permissoes-do-scriptcase-no-seu-host

Olá Alexandre,

Primeiro, obrigado pela resposta, apesar do horário.

Segundo, já tentei todos os esquemas possíveis de permissão que você pode imaginar. Sempre mudando todos ao mesmo tempo. Já aconteceu de não ter permissão para nada, e depois consertar. Conheço razoavelmente linux, e permissão não creio que seja neste caso.

Antes de colocar perguntas em fóruns, costumo tentar todos os recursos e pesquisar primeiro, para evitar as repetições. Neste caso, cheguei a abrir lado a lado os arquivos php de aplicações que funcionam, com a do menu, que não está funcionando, e não encontrei nenhuma diferença gritante, que pudesse indicar o que está acontecendo.

Na minha máquina local, funciona perfeitamente, no note também. Uso Mac nos dois casos. Mas o que chama a atenção, é que são cerca de 80 aplicações, e todas funcionam sem problemas, perfeitamente, inclusive os gráficos, se acesso de forma individual. É apenas o Menu que não está funcionando.

Pensei de cara que pudesse ser algo relacionado ao css, mas acredito que se fosse, acusaria o erro, e não acusa.

Em tempo… O erro é 500, não 550. É algum recurso não encontrado, biblioteca, ou configuração, ou porque amanhã vai chover, talvez, hehe… Não consegui nenhuma literatura que seja precisa a respeito deste erro. Comecei a pouco com Scriptcase, e até agora, estava gostando. Mas não tem coisa que detesto mais do que ficar horas tentando resolver essas chatices de configuração de servidores… É uma perda de tempo absurda.

O que o log access.log e o error.log do servidor web retorna?

Disse para ver o log pois erros de programação também podem gerar o erro 500.
Você usa algum evento no menu?

Não uso nenhum evento não… Mas francamente, como foi meu primeiro deploy, e nas máquinas locais tudo funciona perfeitamente, não pensei que pudesse ser algum erro de programação, até porque realmente não faço nada no menu, a não ser chamar aplicações…

Mas olhando o error.log, está acusando um erro de parse do php em uma determinada linha do menu. Vou examinar com calma, e se resolver, posto aqui o desfecho. Senão, volto a pedir socorro.

Por enquanto, obrigado.

Estás usando a segurança do SC?

Senhores, obrigado pelas respostas.

Felizmente, era algo bem mais simples do que eu imaginava… Sempre é, hehe…

Uma abertura errada de tag php (<?php) logo após o css do menu. O estranho é que o log acusa o erro em uma linha muito, muito a frente no código, que nada tem a ver com esta situação. Acredito até que seja outro ponto de erro, mas que por se tratar de uma verificação do scriptcase, ela não está sendo executada, e portanto, não está causando nenhum travamento.

O código tem um “else” em um local que não tem um If adequado, como se parte do código não tivesse sido gerado, ou gerado errado.

Outro ponto curioso, é que tenho a mesma situação, exatamente igual, em duas máquinas locais, e o aplicativo roda normalmente, como se o Scriptcase ignorasse o erro. Tanto que não consertei, para testar, e continua funcionando.

E Kleyber, sim, estou usando segurança, mas desativei para publicar o teste. Está tudo funcionando normalmente agora.

Bom que resolveste. Podes colocar ** RESOLVIDO ** no título do primeiro post? Assim outros que possam passar pelo mesmo problema pode ver facilmente a solução.

Obrigado por ter dado o retorno.