2014-04-09 10 views
5

Ich habe rockmongo in meinem ubuntu von diesem site installiert. Als ich versuchte, den rockmongo vom Browser zu öffnen, zeigte es fatalen Fehler an, wie unten erwähnt.RockMongo fataler Fehler

Fehler:

Fatal error: ini_set(): To prevent data corruption, you are not allowed to turn on the mongo.native_long setting on 32-bit platforms in Unknown on line 0 

, wie ich dieses Problem lösen kann, kann mir jemand geben, eine Lösung für dieses Problem.

Antwort

13

native_long Unterstützung für 32-Bit wurde (ziemlich logisch) removed aus dem Mongo-Treiber. . RockMongo verwendet ini_set("mongo.native_long", 1); in seiner index.php. Als schnelle Lösung, kommentieren Sie diese Zeile.

+0

Danke Georg, ich habe mich schnell gebessert. – Ramakrishna

4

Die schnelle Lösung ist here, in index.php die ini_set Linie ersetzen:

ini_set("mongo.native_long", 1); 

mit:

ini_set('mongo.native_long', strlen(decbin(~0)) == 32 ? 0 : 1); 

Oder es einfach zu entfernen, ist der Standardwert 1 ohnehin

1

In meinem Konfiguration

Windows 7, Apache 2, PHP 5.5 [API220121212,TS,VC11], Mongo 2.6, Mongo PHP extension 1.5.7

nur die Kombination von

ini_set("mongo.native_long", 0); 
ini_set("mongo.long_as_object", 1); 

half vom erholen Fehler „Kann nicht nativ die lange 9223372036854775807 auf dieser Plattform darstellen“.