ho qualche problema con la mia distribuzione di produzione di Symfony2,simplexml_load_file(): I/O di allarme: è riuscito a caricare un'entità esterna " /user-bundle/Resources/config/doctrine/model/User.orm.xml
Ho provato molte soluzioni, ma nessuna ha funzionato.
ho casualmente hanno questo errore quando si accede a mia applicazione symfony sul ambiente di produzione:
(!) Fatal error: Uncaught exception 'Symfony\Component\Debug\Exception\ContextErrorException' with message 'Warning: simplexml_load_file(): I/O warning : failed to load external entity "/home/user/symfony/vendor/friendsofsymfony/user-bundle/Resources/config/doctrine/model/User.orm.xml"' in /home/user/symfony/app/bootstrap.php.cache on line 2998
(!) Symfony\Component\Debug\Exception\ContextErrorException: Warning: simplexml_load_file(): I/O warning : failed to load external entity "/home/user/symfony/vendor/friendsofsymfony/user-bundle/Resources/config/doctrine/model/User.orm.xml" in /home/user/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/Driver/XmlDriver.php on line 736
Call Stack
# Time Memory Function Location
1 0.0000 262880 {main}() ../app_dev.php:0
2 0.0015 572736 Symfony\Component\HttpKernel\Kernel->handle() ../app_dev.php:79
3 0.1342 4023952 Symfony\Component\HttpKernel\DependencyInjection\ContainerAwareHttpKernel->handle() ../bootstrap.php.cache:2376
(!) LogicException: Request stack is empty in /home/user/symfony/app/bootstrap.php.cache on line 2998
Call Stack
# Time Memory Function Location
1 0.3330 7110120 Symfony\Component\Debug\ErrorHandler->handleException() ../classes.php:0
2 0.3331 7119696 Symfony\Component\Debug\ErrorHandler->handleException() ../classes.php:1939
Ho cercato di aggiornare la versione di PHP (ero in php 5.4.x ed ora in 5.6.4),
ho cercato di aggiornare la versione lixml2 (io sono in 2.8.0 ora, ma ho già provato ad aggiornare in 2.9.3)
ho constated che la versione di libxml utilizzato in php è sempre 2.8.0, ma, non ho trovato il modo di cambiare questo,
Ho provato a impostare l'intera directory di symfony in chmod 777
Il mio server è un debian 7.5 server.
Forse qualcuno che conosce questo errore può aiutarmi
Ecco alcuni link a differents domanda relativa a questo:
Random Error, FOSUserBundle Error e Service error
io non inviare a loro perché sono tutti obsoleti
[EDIT]
ho trovato una qu ick correzione, ma è a fornitori, così sarà overrided nel primo aggiornamento dell'aggiornamento dottrina:
QuickFix in XmlDriver.php Linea 737
$xmlElement = @simplexml_load_file($file);
if(!$xmlElement){
$xmlData = file_get_contents($file);
$xmlElement = simplexml_load_string($xmlData);
}
Ci può spiegare di più come è risolto il problema? Grazie ... –
Oltre al fatto che cambi fornitore, ma aggiungendo un @ per nascondere un errore fatale è peggio, lo script php si ferma e non te ne accorgi nemmeno, funzionerà senza errori ma noterai che comportamento strano dopo quello senza sapere perché. –
Sì, sono consapevole che questo quickfix non è una soluzione, ma è meglio di niente! – PyRowMan