2013-10-23 26 views
5

Così ho eseguito l'aggiornamento a OS X 10.9 Mavericks e sto provando a configurare nuovamente il mio ambiente locale. Ho eseguito xcode-select --install come indicato in this thread che mi consente di compilare correttamente le estensioni. Ho confermato che l'estensione esiste in /usr/lib/php/extensions/no-debug-non-zts-20100525 e che ho aggiunto extension=redis.so al mio file php.ini.non è possibile caricare estensioni PHP su OS X Mavericks

Non ho riscontrato alcun errore relativo all'impossibilità di caricare l'estensione e phpinfo() segnala la dir_estensione prevista e mostra un extension=redis.so nell'output, confermando che l'ho inserito nel file corretto. Sfortunatamente questa è l'unica traccia di "redis" nell'output phpinfo().

Quando vado a mia domanda, ottengo l'errore: Fatal error: Class 'Redis' not found in /Volumes/Storage/ty/Sites/audiomack/application/Bootstrap.php on line 95

ho installato utilizzando sudo pecl install redis una sola volta e scaricando manualmente i phpredis zip e la compilazione io stesso una volta, lo stesso risultato.

Qualche idea per cui PHP non sta caricando le estensioni?

Sto ricevendo uno strano avviso che sembra non correlato, ma lo menzionerò per completezza: in php.ini ho impostato date.timezone = America/New_York, ma la mia impostazione sembra essere ignorata. sezione "data" di PHP Info mostra date.timezone come 'nessun valore' ancora, e mi dà l'avvertimento che abbiamo visto tutti un centinaio di volte:

It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /Volumes/Storage/ty/Sites/audiomack/public/phpinfo.php on line 2

edit: Sì, ho riavviato apache ripetutamente, nessun dado

+0

idea di ther Edis roba, ma per i bit di fuso orario, assicurarsi che si sta editting il .ini corretto file. L'output di 'phpinfo()' ti dirà quali file vengono analizzati. potresti aver modificato l'unica CLI di controllo, ma stai usando il SAPI .ini –

+0

arrrrrghgh ... una frase mancante sulla riga include_path di php.ini era il colpevole. Sono scioccato dal fatto che non ci sia stato alcun errore di sintassi/analisi causato da questo –

risposta

3

ugh. la riga include_path del file php.ini aveva una virgoletta di apertura ma nessuna quotazione di chiusura. PHP stava succhiando la maggior parte del file php.ini come valore per include_path. Scioccato dal fatto che non c'erano errori di sintassi o di analisi lanciati a causa di esso.

0

basta rinominare php.ini.default -> php.ini e riavviare il server Apache: sudo apachectl restart