2015-10-16 19 views
9

Dopo l'aggiornamento a Mac OS X El Capitan, se provo ad avviare apache in XAMPP con 'extension = mongo.so' incluso nel file php.ini, apache non riesce inizio. Se rimuovo questo, apache si avvia correttamente. Mongo è stato installato nel mio build XAMPP usando il comando pecl incluso. Si tratta di un problema con il nuovo sistema operativo, il driver o XAMPP?Driver php MongoDB che causa l'apache su XAMPP OS X fallire

EDIT: Si è il driver funzionante correttamente MAMP, il problema deve esistere in XAMPP

risposta

0

Da:https://github.com/mongodb/mongo-php-driver/issues/247

viene eseguito Il PHP carichi processo mongodb.so e la funzione di libmongoc _mongoc_do_init(), che chiama sasl_client_init() quando compilato con SASL. Ho trovato alcuni riferimenti agli arresti anomali delle versioni precedenti di Cyrus SASL su OS X se il client è inizializzato e distrutto più volte nello stesso processo; tuttavia, mi aspetto che la logica intorno a _mongoc_do_init() assicuri che venga eseguita solo una volta per processo. Inoltre, non sono sicuro della versione di SASL installata (oltre alla libreria con "2.2" nel suo nome file), quindi non sono sicuro che si tratti di un'aringa rossa. Dovrò seguire gli sviluppatori libmongoc per confermare.

Nel frattempo, potresti fornire un log del tuo pecl install mongodb? Esistono alcune linee di interesse correlate a come è configurato SASL (purtroppo non il numero esatto della versione).

Inoltre, se si crea manualmente il driver, si dovrebbe essere in grado di utilizzare --with-mongodb-sasl = nessun argomento da configurare per disabilitare il supporto SASL, che può aggirare il problema fino a quando non è possibile diagnosticare ulteriormente. Le fasi di compilazione manuale da un guscio sarebbero:

$ cd /path/to/mongo-php-driver 
$ phpize 
$ ./configure --with-mongodb-sasl=no 
$ make clean && make all && make install 

Questo sarebbe anche richiedendo l'inizializzazione sottomoduli git se si sta clonando il repository. In caso contrario, dovresti essere in grado di estrarre il file tgz PECL e utilizzare tali fonti.