Sto cercando di installare Laconica , un'applicazione di microblogging open source sul mio server di sviluppo Windows usando XAMPP come istruzioni fornite .
Il sito Web non riesce a trovare PEAR e genera gli errori seguenti:
Attenzione: require_once (PEAR.php) [function.require-once]: impossibile aprire lo stream: nessun file o directory in C:\xampplite\htdocs\laconica\lib\common.php sulla linea 31
Errore irreversibile: require_once () [function.require]: apertura fallita richiesta 'PEAR.php' (include_path = '.;\Xampplite\php\pear\PEAR') in C:\xampplite\htdocs\laconica\lib\common. php on line 31
C:\xampplite\php\pear
phpinfo()
mi mostra che il percorso di inclusione è .;\xampplite\php\pear
Che cosa sto facendo di sbagliato? Perché la cartella PEAR non è inclusa?
Devi correggere la variabile di sistema include_path
in modo che punti alla posizione corretta.
Per risolvere il problema, modifica il file php.ini
. In quel file troverai una riga che dice "include_path = ...
". (Puoi scoprire quale sia la posizione di php.ini eseguendo phpinfo()
su una pagina.) Risolvi la parte della riga che dice "\xampplite\php\pear\PEAR
" per leggere "C:\xampplite\php\pear
". Assicurati di lasciare il punto e virgola prima e/o dopo la linea in posizione.
Riavvia PHP e dovresti essere bravo a farlo. Per riavviare PHP in IIS puoi riavviare il pool di applicazioni assegnato al tuo sito o, meglio ancora, riavviare IIS tutti insieme.
Se si sta utilizzando l'installazione XAMPP portatile e Windows 7, e, come me, dopo aver rimosso la shell XAMPP dal pannello di controllo come me, nessuna delle risposte suggerite qui vi farà molto bene, poiché i pacchetti non verranno installati.
Il problema è con il file di configurazione. Ho trovato le impostazioni corrette dopo un sacco di tentativi ed errori.
Basta aprire una finestra di comando nella directory\xampp\php ed eseguire
pear config-set doc_dir :\xampp\php\docs\PEAR
pear config-set cfg_dir :\xampp\php\cfg
pear config-set data_dir :\xampp\php\data\PEAR
pear config-set test_dir :\xampp\php\tests
pear config-set www_dir :\xampp\php\www
dovrai sostituire ":" con la lettera di unità effettiva su cui è in esecuzione l'unità portatile al momento. Sfortunatamente, questo deve essere fatto ogni volta che questa lettera di unità cambia, ma ha ottenuto il modulo che avevo bisogno di installare.
Ho provato prima tutte le altre risposte, ma nessuna sembrava funzionare, quindi ho impostato il percorso della pera in modo statico nel file di configurazione della pera
C:\xampp\php\pear\config.php
trova questo codice:
if (!defined('PEAR_INSTALL_DIR') || !PEAR_INSTALL_DIR) {
$PEAR_INSTALL_DIR = PHP_LIBDIR . DIRECTORY_SEPARATOR . 'pear';
}
else {
$PEAR_INSTALL_DIR = PEAR_INSTALL_DIR;
}
e basta sostituirlo con questo:
$PEAR_INSTALL_DIR = "C:\\xampp\\php\\pear";
Ho riavviato Apache e ho usato il comando:
pear config-all
assicurati che tutti i percorsi non inizieranno più con C:\php\pear
Come per il punto 1, il percorso PEAR è c:\xampplite\php\pear \
Tuttavia, il tuo percorso punta a\xampplite\php\pear\PEAR
Mettendo i due sopra l'altro si può chiaramente vedere uno è troppo lungo:
c:\xampplite\php\pear \
\ Xampplite\php\pear\PEAR
Il tuo percorso di inclusione è impostato per andare a uno PEAR troppo in profondità nel pero. La sottocartella PEAR della cartella pera include il componente PEAR. È necessario regolare il percorso di inclusione verso l'alto di un livello.
(non hai bisogno del c: a proposito, il tuo percorso va bene così com'è, troppo profondo)
Un altro trucco per questo tipo di problema: evitare di eseguire la pera all'interno di una shell Unix (ad es., Git Bash o Cygwin) su una macchina Windows. Ho avuto lo stesso problema e la correzione del percorso suggerita sopra non ha aiutato. Passato a una shell di Windows, e il comando pera funziona come previsto.
Prova ad aggiungere la lettera di unità:
include_path='.;c:\xampplite\php\pear\PEAR'
verifica anche che PEAR.php sia effettivamente lì, potrebbe essere in\php\invece:
include_path='.;c:\xampplite\php'
Su Windows usa Xampp Shell (c'è un pulsante 'Shell' nel tuo pannello di controllo XAMPP)
poi
cd php\pear
andare a 'C:\xampp\php\pear'
quindi digita
pear