2015-09-23 16 views
9

Abbiamo impostato Weblogic per poter eseguire PHP, questo collegamento è stato utilizzato come guida http://archive.oreilly.com/cs/user/view/cs_msg/25690. Siamo in grado di utilizzare PHP anche se solo 5.3.9.Errori con PHP e Weblogic Server

Una cosa che ho problemi è la visualizzazione di tutti gli errori di PHP. Quando gli errori di PHP in alcune circostanze solo mostra l'errore del server:

Error 500--Internal Server Error From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1: 10.5.1 500 Internal Server Error The server encountered an unexpected condition which prevented it from fulfilling the request.

ho una versione locale di PHP (5.6.4) con lo stesso phpinfo() uscite per display_errors => STDOUT => STDOUT e error_reporting => 32767 => 32767 e visualizzerà gli errori.

Un rapido esempio di errori che non verrà visualizzato è che si ottiene un nome di funzione errato o un mistype di un linguaggio come echo, verrà visualizzato l'errore del server non lo parse error: message: line.

Non ho mai usato PHP su weblogic prima, quindi non sono sicuro di quale sia questo problema o di come risolverlo?

+0

@HPierce abbiamo controllato i registri e dice solo errore PHP – Jonnny

+0

Yikes! Mi sono appena completamente sbagliato. PHP _will_ produce 500 errori quando la segnalazione degli errori è completamente disattivata. Immagino che tu abbia già guardato [questa domanda] (http://stackoverflow.com/questions/1053424/how-do-i-get-php-errors-to-display)? Mentre gli errori non venivano segnalati, ho trovato che gli errori venivano registrati nel mio php error.log (che potrebbe essere un posto migliore per farli apparire quando si esegue comunque sul server di produzione) – HPierce

+1

@HPierce non l'ho fatto ma l'ho fatto basta ricontrollare la risposta e provare a implementarla. Nessun cambiamento. Non avevo un php_errors.log nel mio set up, quindi ne ho creato uno qualche giorno fa, è vuoto – Jonnny

risposta

5

Jonnny, sei sicuro che non ci fossero precedenti impostazioni error_log nel tuo php.ini?

Ho eseguito un'installazione di prova di 5.3.9 e ottenuto C:\WINDOWS\temp\php-errors.log Cosa dice phpinfo() per le direttive error_log e log_errors?

Se si desidera analizzare gli errori da restituire al browser (tramite stdout) allora il valore per error_log deve essere vuota o semplicemente garantire error_log non è impostata nessuna parte

Questo era il mio php.ini di default e quando ho controllato il registro era funzionante, compresi gli errori di analisi.

log_errors=On 
error_log="C:\WINDOWS\temp\php-errors.log" 
+0

BTW Jonnny, stai usando l'eseguibile php.exe o php-cgi.exe? –

+0

No, non c'era nessun registro degli errori in precedenza. Ne ho anche cercato uno nei file temporanei, come dice che è dove dovrebbe essere, ma non ce n'era uno. Ho provato le modifiche menzionate per vedere sia la generazione di un registro o l'uscita al browser e non tale fortuna. Dal link nella mia domanda sembra essere un php come estensione cgi. Posso vedere un php.exe nella mia cartella di base – Jonnny

+0

Ok, se è il php.exe, dovresti essere in grado di creare un file PHP di prova ed eseguire dalla riga cmd 'php.exe test.php'. Aggiungi un errore e vedi se emette o registra qualcosa. –

Problemi correlati