2016-08-01 49 views
0

Ich entwickelte eine Website mit Yii2 Framework, und obwohl ich nicht explizit die Cache-Funktionen verwendet habe, denke ich, es tut einige Dinge mit APC als Standard.Alternative zu APC in Yii2

Der Client, auf dem ich die Website veröffentlicht habe, hat APC deinstalliert, da es seit Version 5.5 veraltet ist und die Installation der Erweiterung ablehnt.

Mein Client erhält jetzt jedes Mal, wenn er versucht, einen Datensatz in der Datenbank zu speichern oder zu löschen, eine nicht 'dynamische Datenbank laden - apc.so' nicht gelesen.

Ich habe versucht, den Cache-Unterordner unter dem Runtime-Ordner in der Hoffnung zu löschen, dass die Website das System verwendet, das verfügbar ist, aber der Fehler schleicht sich immer noch.

Sie verwenden Opcache. Wie kann ich yi neu konfigurieren, um opcache zu verwenden und zu verhindern, dass der apc.so-Fehler nicht gefunden werden kann?

EDIT:

Dies ist, was ich unter Komponenten haben.

'cache' => [ 
      'class' => 'yii\caching\FileCache', 
     ], 

Antwort

1

Wenn Ihr Cache richtig konfiguriert ist, Sie so etwas wie dies in der Konfigurationsdatei finden sollten:

'components' => [ 
    'cache' => [ 
     'class' => 'yii\caching\ApcCache', 
    ], 
], 

Nun AFAIK OpCache erfordert keine Konfiguration auf die Code-Ebene, so dass Sie nicht haben Ersetzen Sie diese Konfiguration durch etwas OpCache-spezifisch, aber es gibt direkte Cache-Aufrufe in Ihrem Code (daher der Fehler), so dass Sie einige verfügbare cache component sowieso verwenden möchten. Falls Sie wollen keine neue Cache-Komponente verwenden und gleichzeitig die Sie nicht wollen, Cache-Anrufe in Ihrem Code verwenden entfernen DummyCache:

'cache' => [ 
    'class' => 'yii\caching\DummyCache', 
], 

EDIT:

Es ist wie es aussieht ist kein Fall von Yii 2 Konfiguration, eher wie eine PHP Konfiguration. Suchen Sie nach "dynamische Bibliothek nicht laden - apc.so". Wahrscheinlich befindet sich APC immer noch in der PHP-Konfiguration, aber die Bibliothek wurde entfernt. ähnliche Fragen:

+0

Ich habe meine Antwort bearbeitet. – Bizley

+0

Es war ein PHP-Config-Problem. –