Pergunta

Eu trabalho em um site muito alto traficadas que usa um sistema de templates Smarty.

Quando eu carregar uma nova cópia de um modelo que está sendo usado atualmente, a página se transforma em branco (como se não há nada no próprio arquivo de modelo). Eu tenho que desligar lighttpd, carregar o modelo novo, e começar a voltar lighttpd-se.

Existem quaisquer configurações no Smarty que eu deveria estar utilizando que eu poderia não ser?

Aqui está uma lista de variáveis ??que eu estou definindo dentro de si Smarty:

$ smarty-> use_sub_dirs = true;

$ smarty-> compile_check = true;

Foi útil?

Solução

não copiar seus modelos diretamente, copiá-los em alguma pasta temporária e depois de acabamentos de upload fazer uma (operação de arquivo movimento) mv

Outras dicas

você tente limpar os arquivos em cache? Se o arquivo não está completamente carregado e alguém pede isso, ele fica em cache quebrado (pelo menos é isso que eu acho). Eu costumava usar o sabe-tudo e eu também usar lighttpd. (Decidiu ir XSLT)

Se a página está sendo solicitada mais de 2 vezes um segundo a sua nunca vai ser capaz de realmente atualizar o arquivo, a menos que a sua vez o servidor http off. Ou limpar o arquivo em cache smarty.

Você pode querer ativar o cache antes de fazer upload de um arquivo (se já estiver ligado, aumentar o tempo limite e certifique-se de que todo o modelo é armazenada em cache). Ativar o cache e configurá-lo para um par de minutos de tempo limite para que Smarty não compila modelos recém-carregados. Visite a página que tem o seu modelo para garantir que Smarty tem em cache-lo. Em seguida, carregar o modelo antes do cache expira. Quando o upload terminar, você pode ligar o cache de novo (ou defini-lo de volta para os valores originais).

Você pode querer adicionar uma configuração para seu aplicativo que pode globalmente ligar / desligar esse mecanismo de cache.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top