Oi, alguma ajuda para este problema?
OsTicket 1.10
Win 2012 R2
Apache 2.4
Php 7.1
Instalado tudo, pega esse problema. Li muito, encontrei solução para mudar "session.auto_start" para 1 e funcionou para mim. Eu loguei, mas depois de um tempo ainda tenho o mesmo problema.
Meu palpite é que é porque você está executando o PHP 7.1.0 (lançado há alguns dias). É meu entendimento que osticket 1.10 ainda não é totalmente compatível com 7.0. Você pode querer diminuir a nota para 5,6 e ver se isso ajuda.
Obrigado! Vou tentar reinstalá-lo amanhã.
Todo esse material php é novo para mim, então acabei de baixar a versão atualizada de tudo. Eu acho que deveria haver algum tipo de notificação de que php 7 ou superior não é oficialmente suportado ainda.
Eu tenho o mesmo problema no PHP 7.1 vou fazer o downgrade para o PHP 5.6 e funciona bem com o PHP mais antigo.
Parece ser um problema diferente com OsTicket e PHP 7 https://github.com/osTicket/osTicket/issues/3033
Tive esse problema com OSticket 1.10, Apache e PHP 7.1. Depois de fazer o downgrade do PHP para 7.0.14, o erro desapareceu. Espero que isso ajude alguém.
Isso está sendo trabalhado? O PHP 7.1 foi lançado agora e o suporte osTicket para ele seria ótimo.
Espero que isso esteja sendo trabalhado
Eu tenho o mesmo problema no PHP 7.1 + osticket 1.10.
Algumas informações sobre minhas escavações:
"OSTSESSID=nntpjei4195nd6ru6h759mtk1d; expires=Tue, 28-Mar-2017 12:46:50 GMT; Max-Age=86400; path=%PATH%"
DoesNotExist
exceção em upload/include/class.ostsession.php(184): QuerySet->one()
(é claro, isso foi resgatado.)Alguém tentará o patch 424bfc9 acima? Isso resolveu meu problema.
Vou decidir fazer uma solicitação de pull com base em feedbacks.
@kaorukobo, seu patch funcionou para mim, usando a última versão do osticket e o último php 7.1 da remi. Obrigado!
@kaorukobo
Posso confirmar que a correção funcionou para mim também. Centos 7, PHP 7.1.3 de Remi OSTicket 1.10
A solicitação pull correspondente foi aprovada:
https://github.com/osTicket/osTicket/pull/3773
Acabei de instalar o osTicket mais recente, estou no PHP versão 7.1.5 no Windows 7 Professional Edition Service Pack 1 i586 e recebi o token CSRF válido necessário no primeiro login para o administrador
Isso é terrível. Mesmo problema que https://github.com/osTicket/osTicket/issues/304 ? Eu gostaria de ter sabido antes de fazer o upgrade. Não posso voltar neste servidor porque PHP7 é necessário para alguns dos meus scripts. Esta deve ser a prioridade 1.
Caro @ TomAshley303, parece que este problema com o PHP 7 não será corrigido em breve, pois manter o PHP e outros softwares atualizados é muito importante para a segurança. Eu atualizei para o PHP 7
Aqui está a solução para quem funciona: https://github.com/osTicket/osTicket/commit/424bfc99d93b920f6162b602eeea41125086425d
Para sua informação, tive o mesmo problema e era hora incorreta na minha máquina.
Acabei de descobrir que o login no meu OSticket é possível no PHP5.6. Assim que configuro meu servidor para PHP7.1, não consigo mais fazer login no OSTicket e obter a mensagem Valid CSRF Token Required.
@Richardvi osTicket suporta php7 e não php7.1. Portanto, esse é provavelmente o seu problema.
OK, obrigado!
Obrigado irmão isso realmente ajuda.
Obrigado!!! Funciona bem :)
Novo no osTicket hoje, negocie o disjuntor para mim se ele não suportar php7.1.x, até que seja.
Funciona para mim, só preciso adicionar uma nova linha em um arquivo 👍
https://github.com/osTicket/osTicket/commit/424bfc99d93b920f6162b602eeea41125086425d
Alguém sabe se isso foi corrigido na última versão 1.10.4 (ontem)?
Olá @ Acho que este problema não foi corrigido, nunca testei a última versão como foi lançada recentemente.
Você pode ler na nota de lançamento o que a atualização inclui: https://github.com/osTicket/osTicket/commit/035fd0af32647199bae662eda6517f70e9225329
@PeopleInside
É um tanto endereçado em v1.11.0rc-1
com isso . Em vez de exibir uma janela em branco com uma mensagem de erro, ele exibe a página de login com o erro "Token CSRF válido".
Saúde.
Windows + Apache + PHP Versão 7.2.7
session.auto_start = 1 funcionou para mim
Ubuntu 18.04 x64 + Apache2 + PHP 7.2-10 + osT 1.10.4
/etc/php/7.2/apache2/php.ini session.auto_start = 1 funcionou para mim também.
/etc/php/7.2/apache2/php.ini session.auto_start = 1 funcionou para mim também.
Olá @jpkh, muito obrigado por compartilhar onde session.auto_start = 1 deve ser colocado. Esta é uma edição da configuração do php (ini), estou perguntando o que OsTicket deve alterar para resolver esse problema. Normalmente prefiro a correção feita no software e não no PHP. É bom saber que há uma solução para trabalhar com PHP 7.2, mas talvez eu espere para entender se o problema pode ser resolvido no lado do OsTicket.
A última versão é compatível com Php 7.0, então você pode fazer o downgrade de 7.1 para 7.0. Conserto fácil
No PHP 7.1 e superior, é necessário retornar uma string de um manipulador de leitura de sessão ou você obterá um erro - a documentação sempre disse que deveria retornar uma string, mas o PHP só agora começou a impor isso. Olhe nos logs de php para ver se você tem PHP Warning: session_start (): Falha ao ler os dados da sessão: usuário
adicionando a seguinte linha APENAS antes do retorno no método de leitura em class.ostsession.php
if(!is_string($this->data->session_data)) {
$this->data->session_data = strval($this->data->session_data);
}
Isso garante que não importa O QUE você coloque nos dados da sessão, você sempre retorna uma string como deveria
Desatualizar sua versão do PHP nunca é uma boa ideia por razões de segurança. Duplamente ruim porque o PHP 7.0 já está sem suporte regular e sem suporte de segurança em um mês :(
@auroraeosrose existem duas funções de leitura em class.ostsession.php, você poderia especificar a linha em que este trecho deve ser inserido? a função de leitura na linha 270? ou o do 183? PS obrigado por esta solução ... Quando eu usei session.auto_start=1
ele quebrou um dos outros aplicativos (TestLink) que eu executo no mesmo servidor, então agradeço uma solução que envolve apenas alterações no OST e não no php .ini
@davidtessier
O da classe DbSessionBackend
, coloque logo acima do retorno.
PS
Isso é tratado em 1.11
com:
Saúde.
Obrigado! Isso funcionou.
No PHP 7.1 e superior, é necessário retornar uma string de um manipulador de leitura de sessão ou você obterá um erro - a documentação sempre disse que deveria retornar uma string, mas o PHP só agora começou a impor isso. Olhe nos logs de php para ver se você tem PHP Warning: session_start (): Falha ao ler os dados da sessão: usuário
adicionando a seguinte linha APENAS antes do retorno no método de leitura em class.ostsession.php
if(!is_string($this->data->session_data)) { $this->data->session_data = strval($this->data->session_data); }
Isso garante que não importa O QUE você coloque nos dados da sessão, você sempre retorna uma string como deveria
Desatualizar sua versão do PHP nunca é uma boa ideia por razões de segurança. Duplamente ruim porque o PHP 7.0 já está sem suporte regular e sem suporte de segurança em um mês :(
Obrigado, isso funciona para mim.
A solução de @auroraeosrose também funcionou para mim no PHP7.2.15 e osticket 1.10.5
A solução de @auroraeosrose funciona em:
ID do Distribuidor: Debian
Descrição: Debian GNU / Linux 9.8 (extensão)
Versão: 9,8
Codename: stretch
Apache 2.4
PHP versão 7.2.16
Comentários muito úteis
Alguém tentará o patch 424bfc9 acima? Isso resolveu meu problema.
Vou decidir fazer uma solicitação de pull com base em feedbacks.