2014-04-09 17 views
5

Zainstalowałem rockmongo w moim ubuntu z tego site. Kiedy próbowałem otworzyć rockmongo z przeglądarki, pokazywał on fatalny błąd, jak opisano poniżej.Błąd krytyczny RockMongo

Błąd:

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 

Jak mogę rozwiązać ten problem, może ktoś podać mi rozwiązanie tego problemu.

Odpowiedz

13

Obsługa native_long dla 32-bitów została (całkiem logicznie) removed ze sterownika mongo. . RockMongo używa ini_set("mongo.native_long", 1); w swoim index.php. Jako szybką naprawę skomentuj tę linię.

+0

Dziękuję Georg, szybko to naprawiłem. – Ramakrishna

4

Szybka poprawka jest here w index.php wymienić ini_set wiersz:

ini_set("mongo.native_long", 1); 

z:

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

Albo po prostu usunąć go, wartość domyślna to 1 i tak

1

W moim konfiguracja

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

tylko kombinacja z

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

pomógł odzyskać z „nie może natywnie reprezentowania długo 9223372036854775807 na tej platformie” błąd.