pro inc app actualizar php caching mamp php-5.5

php - inc - mamp tv download



Detenga el almacenamiento en caché de PHP 5.5.3 en MAMP (9)

Instalado MAMP en una nueva Macbook con PHP 5.5.3.

Recargar y actualizar no hacen nada. Aún nada. Busque en Google por unos minutos tratando de descubrir qué está mal, vuelva y actualice. Funciona. ¿Qué diablos?

Entré en php.ini y deshabilité todos los nuevos OPcache y establecí el tiempo de caché predeterminado en 0. Agregué encabezados al documento para no forzar el almacenamiento en caché. Todavía el mismo problema. ¿Qué diablos está pasando aquí?

La pestaña de red muestra una solicitud HTTP 200, por lo que cualquier HTML nuevo en el archivo index.php rinde bien, pero el nuevo PHP que debe ser procesado por el servidor se retrasa y no se procesa hasta que transcurra un tiempo predeterminado que no puedo Sé cómo cambiar. ¿Que esta pasando?

Lo comprobé en Safari también, por lo que definitivamente es una cosa de servidor que impide que el archivo se reproduzca.

Sin embargo, es interesante, si entro en MAMP y cambio la versión de PHP a la anterior (PHP 5.2 o algo similar), se renderizará normalmente, sin "problemas de caché". Cambia a PHP 5.5 y cuelga. En las preferencias de MAMP, las opciones de almacenamiento en caché para 5.5 ni siquiera existen y se desactivan automáticamente.


¡Oh, hombre, estoy contento de haber encontrado este hilo! ¡Me estaba tirando de los pelos! Acabo de actualizar MAMP ayer y no me di cuenta de este problema de almacenamiento en caché hasta hoy mientras trabajaba en un proyecto. Pensé que estaba perdiendo la cabeza. Acabo de cambiar "/Applications/MAMP/conf/php5.5.3/php.ini" en la parte inferior del archivo opcache.enable = 0


1) en / Aplicaciones / MAMP / bin / php / php5.5.3/conf/php.ini
2) establecer opcache.revalidate_freq = 0
3) reiniciar MAMP


Edite "/Aplicaciones/MAMP/conf/php5.5.3/php.ini" y busque [OPcache] y agregue este código debajo de él directamente:

opcache.enable=0

Esto desactivará opcache cuando use PHP en el servidor MAMP.


Esto también es actual en la versión de Windows de MAMP.

C: / MAMP / conf / php5.6.3 / php.ini

Está listado en la parte inferior del archivo.

El otro problema que encontré fue en un QNAP NAS TS-431. Este almacenamiento en caché también está habilitado, y si está trabajando con archivos que cambian dinámicamente o intenta desarrollarlo, estará arrancando su cabello. Según los otros comentarios, solo coméntelo. La configuración se encuentra en:

Panel de control / Aplicaciones / Servidor web / Mantenimiento PHP.ini.

Una vez más, encontrarás la configuración en la parte inferior del archivo.


Fue doloroso pasar alrededor de 1 hora tratando de descubrir qué podría ser.

Acabo de agregar esto al final del código y reiniciar MAMP.

opcache.revalidate_freq=0 opcache_reset();


Me tomó tanto tiempo descubrir que era un problema de MAMP. ¿Por qué se habilitaría OPcache de manera predeterminada? ¿Y se requeriría modificar php.ini para deshabilitarlo? En una aplicación que se supone que se usará para probar sitios web. De todos modos, leí todo este hilo y probé varias soluciones.

Aquí están mis notas sobre cómo funciona cada solución y consideraciones para seleccionar una solución.

Cada solución funciona por sí misma; no hay necesidad de redundancia.

Solución de código de página web

opcache_reset ();

<?php opcache_reset(); ?>

  • Debe agregarse en el código de la página web.
  • Fuerza a todos los scripts a volver a cargarse.
  • Funciona sin reiniciar el servidor MAMP.

Soluciones de configuración de servidor

Importante: utilice el archivo php.ini en /Applications/MAMP/bin/php/php5.5.3/conf/php.ini y no en /Applications/MAMP/conf/php5.5.3/php.ini . Ajuste en consecuencia si está usando una versión diferente de PHP.

enable = 0

[OPcache] zend_extension="/Applications/MAMP/bin/php/php5.5.3/lib/php/extensions/no-debug-non-zts-20121212/opcache.so" opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 opcache.fast_shutdown=1 opcache.enable_cli=1 enable=0

  • Debe agregarse en [OPcache] en php.ini .
  • Desactiva OPcache
  • Requiere el reinicio del servidor MAMP.

opcache.revalidate_freq = 0

[OPcache] zend_extension="/Applications/MAMP/bin/php/php5.5.3/lib/php/extensions/no-debug-non-zts-20121212/opcache.so" opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=0 opcache.fast_shutdown=1 opcache.enable_cli=1

  • Modifique opcache.revalidate_freq en [OPcache] en php.ini .
  • Hace que OPcache busque actualizaciones cada 0 segundos en lugar de cada 60 segundos.
  • Requiere el reinicio del servidor MAMP.

Comentando [OPcache]

;[OPcache] ;zend_extension="/Applications/MAMP/bin/php/php5.5.3/lib/php/extensions/no-debug-non-zts-20121212/opcache.so" ;opcache.memory_consumption=128 ;opcache.interned_strings_buffer=8 ;opcache.max_accelerated_files=4000 ;opcache.revalidate_freq=60 ;opcache.fast_shutdown=1 ;opcache.enable_cli=1

  • Comente toda la sección [OPcache] en php.ini .
  • Elimina OPcache del servidor PHP.
  • Requiere el reinicio del servidor MAMP.

Consideraciones

Elija la solución de código de página web si:

  • Solo necesita forzar la actualización del script para un proyecto en particular
  • No desea reiniciar el servidor MAMP
  • No quieres editar php.ini

Elija una solución de configuración de servidor si:

  • Desea desactivar el almacenamiento en caché de forma predeterminada en lugar de tener que hacerlo en todos los proyectos
  • Te sientes cómodo editando php.ini

Personalmente prefiero enable=0 ya que es la solución más simple para mí, y necesito el almacenamiento en caché desactivado por defecto.

Referencias


Agregué opcache_reset (); en mi PHP principal para detener este almacenamiento en caché.

Eliminarlo de php5.5.3/conf/php.ini no hizo nada por mí.

Editar

Resulta que también hay una /Applications/MAMP/bin/php/php5.5.3/conf/php.ini . Funciona si lo comento por ahí.


Deshabilitar OPCache

MAMP ahora activa OPCache de manera predeterminada, puede deshabilitarlo editando su archivo php.ini. Asegúrese de editar el php.ini correcto.

Me encontré con el mismo problema yo mismo. MAMP con PHP versión 5.5.3 ejecuta OPcache de forma predeterminada, pero no puede desactivarlo en la GUI como lo hace con la versión 5.2.17 anterior de PHP. Debe comentar manualmente todas las líneas OPcache al final del archivo php.ini (MAMP / bin / php / [versión] /conf/php.ini) y asegúrese de detener e iniciar los servidores para que los cambios se realicen. efecto.

Actualicé el URI, los cambios pueden ser reflexivos cambiando también / conf / en la carpeta php, pero parece que MAMP los ignorará después de reiniciar .


Parece que finalmente esta es una opción de GUI. MAMP 3.0.7.2 for Mac OS X