Kui käivitatav PHP skript kuvab veateate “500 Internal Server Error“, on reeglina põhjuseks ebakorrektsed .htaccess faili seaded.
Internal Server Errori põhjus on kirjas serveri error_log failis, mis asub virtuaalserveri logs kataloogis. Alati on soovitav vea täpse põhjuse väljaselgitamiseks vaadata seda faili.
Peamised põhjused sellise veateate ilmumisel on järgmised:
- .htaccess faili on lisatud keelatud direktiivid. Mitmed direktiivid on keelatud turvalisuse tagamise jaoks.
- PHP skript võtab liiga palju mälu- või protsessoriressurssi.
- PHP skripti handleri seadmisel on tehtud viga. Iga CGI scripti alguses on reeglina kirjas interpretaator, mis seda skripti töötleb (Perli skripti puhul näiteks #!/usr/bin/perl)
- PHP skriptis on kasutatud ebakorrektset reavahevormingut. DOS stiilis reavahede asemel tuleb kasutada UNIX stiilis reavahesid (seda vähemalt real, kus määratakse interpretaator).
ap_scan_script_header_err_brigade() returned HTTP error 500 veateate põhjus on reeglina see, et PHP saadab headerid, mille pikkus on üle 8000 baidi. Apache veebiserveril on lubatud headerite kogupikkus maksimaalselt 8kB.