MAMP instalado em um novo Macbook com PHP 5.5.3.
Recarregar e atualizar não fazem nada. Nada ainda. Pesquise no Google por alguns minutos tentando descobrir o que está errado, volte e atualize. Funciona. Que diabos?
Entrei no php.ini e desabilitei todo o novo OPcache e defina o tempo de cache padrão como 0. Adicionados cabeçalhos ao documento para forçar o cache. Ainda o mesmo problema. O que diabos está acontecendo aqui?
A guia rede está mostrando uma solicitação HTTP 200, portanto, qualquer novo HTML no index.php
arquivo é processado, mas o novo PHP que precisa ser renderizado pelo servidor é atrasado e não renderizado até que passe um tempo predeterminado que eu não sei como mudar. O que está acontecendo?
Também verifiquei isso no Safari, por isso é definitivamente uma coisa de servidor que está impedindo a renderização do arquivo.
Fato interessante, porém, se eu entrar no MAMP e alterar a versão do PHP para a antiga (PHP 5.2 ou algo semelhante), ela será renderizada normalmente, sem "problemas de cache". Mude para o PHP 5.5 e ele desliga. Nas preferências do MAMP, as opções de cache do 5.5 nem existem e são desativadas automaticamente.
Respostas:
Desativar OPCache
O MAMP agora liga o OPCache por padrão. Você pode desativá-lo editando o arquivo php.ini. Certifique-se de editar o php.ini correto.
Eu mesmo estava enfrentando o mesmo problema. O MAMP com PHP versão 5.5.3 executa o OPcache por padrão, mas você não pode desativá-lo na GUI como na versão 5.2.17 do PHP. Você deve comentar manualmente todas as linhas do OPcache no final do arquivo php.ini (MAMP / bin / php / [versão] /conf/php.ini) e certifique-se de parar e iniciar os servidores para que as alterações sejam executadas efeito.
Eu atualizei o URI, as alterações podem refletir também alterando / conf / na pasta php, mas parece que o MAMP os ignorará após a reinicialização .
fonte
php.ini
arquivo que você deseja editar está em / bin, não em / conf. Meu caminho completo foi/Applications/MAMP/bin/php/php5.5.3/conf/php.ini
.Eu adicionei opcache_reset (); no meu PHP principal para interromper esse cache.
Removê-lo
php5.5.3/conf/php.ini
não fez nada para mim.Editar
Acontece que também há um
/Applications/MAMP/bin/php/php5.5.3/conf/php.ini
. Funciona se eu comentar por aí.fonte
/Applications/MAMP/bin/php/php5.5.3/conf/php.ini
não faz nada, mas acrescentandoopcache_reset();
queindex.php
trabalhou.1) em /Applications/MAMP/bin/php/php5.5.3/conf/php.ini
2) configure opcache.revalidate_freq = 0
3) reinicie o MAMP
fonte
Demorei tanto para descobrir que era um problema do MAMP! Por que o OPcache seria ativado por padrão - e requer que o php.ini seja desativado - em um aplicativo que deveria ser usado para testar sites? Enfim, li todo esse tópico e tentei as várias soluções.
Aqui estão minhas anotações sobre como cada solução funciona e considerações para selecionar uma solução.
Cada solução funciona por conta própria; não há necessidade de redundância.
Solução de código de página da web
opcache_reset ();
Soluções de configuração de servidor
Importante: Use o
php.ini
arquivo/Applications/MAMP/bin/php/php5.5.3/conf/php.ini
e não dentro/Applications/MAMP/conf/php5.5.3/php.ini
. Ajuste de acordo se você estiver usando uma versão diferente do PHP.enable = 0
[OPcache]
emphp.ini
.opcache.revalidate_freq = 0
opcache.revalidate_freq
em[OPcache]
inphp.ini
.Comentando [OPcache]
[OPcache]
seção inteira emphp.ini
.Considerações
Escolha a solução de código da página da Web se:
Escolha uma solução de configuração do servidor se:
Pessoalmente, prefiro,
enable=0
pois é a solução mais simples para mim e preciso usar o cache desativado por padrão.Referências
fonte
Parece que esta é finalmente uma opção da GUI.
MAMP 3.0.7.2 for Mac OS X
.fonte
Foi doloroso passar cerca de 1 hora tentando descobrir o que poderia ser.
Acabei de adicionar isso no final do código e reiniciar o MAMP.
fonte
Edite "/Applications/MAMP/conf/php5.5.3/php.ini" e procure por [OPcache] e adicione este código diretamente:
Isso desativará o opcache ao usar o PHP no servidor MAMP.
fonte
Oh cara, estou feliz por ter encontrado este tópico! Eu estava puxando meu cabelo! Acabei de atualizar o MAMP ontem e não percebi esse problema de armazenamento em cache até hoje enquanto trabalhava em um projeto. Pensei que estava perdendo a cabeça. Acabei de alterar "/Applications/MAMP/conf/php5.5.3/php.ini" na parte inferior do arquivo opcache.enable = 0
fonte
Isso também é atual na versão do MAMP para Windows.
Está listado na parte inferior do arquivo.
O outro problema que encontrei foi em um QNAP NAS TS-431. Esse cache também está ativado e, se você estiver trabalhando com arquivos que mudam dinamicamente ou tenta desenvolvê-lo, estará arrancando os cabelos. De acordo com os outros comentários, basta comentar. A configuração está localizada em:
Mais uma vez, você encontrará as configurações na parte inferior do arquivo.
fonte