Sto eseguendo PHP 5.4 su CentOS 7 e quando c'è un file php che genera un errore (un'eccezione o un errore di sintassi) restituisce uno stato HTTP 200 codice invece di 500.Apache/PHP restituisce il codice di stato HTTP 200 sulle pagine di errore
Come posso ottenere per restituire un errore di 500 server quando PHP rileva un errore?
Ho provato a guardare altri post Stackoverflow e sembrano tutti indicare soluzioni che restituiscono il proprio codice di errore 500 (che credo dovrebbe essere il normale comportamento di PHP su di esso senza che io debba licenziare manualmente il http header, come da queste informazioni: PHP emitting 500 on errors - where is this documented?) Inoltre, Xdebug indica un possibile problema, ma il mio problema persiste anche quando ricostruisco il server senza Xdebug.
Le impostazioni relative ho sono:
- display_errors: su
- display_startup_errors: su
- error_reporting: -1 (questo fa sì che tutti gli errori da segnalare)
perché vorresti? Errori di Apache e errori di php non sono la stessa cosa –
Ma probabilmente gestirà ogni eccezione di PHP in un modo in cui PHP risponde automaticamente con '500'. –
@Dagon Sto parlando dei codici di stato http forniti da apache. Sto cercando di ottenere il comportamento in cui un errore PHP attiva il codice di stato 500. –