mad182 Posted April 2, 2012 Report Share Posted April 2, 2012 (edited) Kādu laiku esmu mēģinājis izdomāt kļūdas iemeslu, bet pašam īsti neizdodas. Problēma tāda, ka retos gadījumos (1 no vairākiem simtiem pieprasījumu) lapa neielādējas uzmetot internal server error, un error logos par to vēsta tikai šāds ieraksts: [Mon Apr 02 06:58:40 2012] [error] [client 85.23*] Premature end of script headers: combine.php [Mon Apr 02 07:03:32 2012] [error] [client 85.31*] Premature end of script headers: index.php [Mon Apr 02 07:10:13 2012] [error] [client 207.24*] Premature end of script headers: index.php [Mon Apr 02 07:22:38 2012] [error] [client 66.24*] Premature end of script headers: index.php Visam pasākumam tiek izmantots ubuntu serveris, php, apache, mysql, memcache, apc (gļuks gan bija arī pirms apc uzinstalēšanas). Visam aktuālās versijas no ubuntu repo. Pieprasījumi vakaros ir vairāki sekundē, bet nu ne tik daudz, lai serverim ar to būtu problēmas tikt galā, un gļukam, šķiet nav sakara ar slodzi. Googlējot šo kļūdu gan daudz kur minēts, ka tāda problēma var būt, ja php nespēj izpildīties dēļ nepietiekamas servera jaudas, bet nu man īsti neticas, ka tāds varētu būt iemesls kļūdām septiņos no rīta, kad load average ar diviem kodoliem bija zem 0.5, un vispār load reti uzkāpj virs 2. Kodā nav neviena php brīdinājuma vai paziņojuma, un kļūda izpaužas šķietami pilnīgi randomi, jebkurā lapas sadaļā. Un vispār šķiet, ka tam iemesls nav meklējams lapas kodā, jo kļūda mēdz parādīties arī js/css kompresorā, kam nav pilnīgi nekāda sakara ar pārējo lapas struktūru, tas ir vienkārši paņemts gatavs un nav atkarīgs no neviena cita faila. It kā jau ar to var sadzīvot, bet nu interesē saprast, kur īsti ir problēma. Varbūt kāds var dot minējumus, ko apskatīties. Diemžēl kaut ko notestēt ir visai sarežģīti, atliek tikai vērot logus. Edited April 2, 2012 by mad182 Quote Link to comment Share on other sites More sharing options...
daGrevis Posted April 2, 2012 Report Share Posted April 2, 2012 Minējumi... 1. Kļūda rodas random klientu IP adresēm? 2. Nav tomēr kāda kļūda assetu kompresoram? Quote Link to comment Share on other sites More sharing options...
mad182 Posted April 2, 2012 Author Report Share Posted April 2, 2012 (edited) Nedomāju, ka divos neatkarīgos koda gabalos ir kļūda, kas šķietami nejauši izraisa "internal server error". Klientu ip ir dažādas :/ Šķiet, ka tam drīzāk vajadzētu būt saistītam ar pašu apache/php, bet nesaprotu, kas tieši. Mans pēdējais minējums bija par sesiju garbage collector'u, kurš varētu nostrādāt apmēram tik pat bieži, bet tā atslēgšana neko nemainija. Edited April 2, 2012 by mad182 Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 2, 2012 Report Share Posted April 2, 2012 (edited) izteikšu minējumus: 1. nepareizas tiesības uz failu 2. faili rediģēti uz wind. mašīnas un dotais redaktors rindiņu pārnešanai izmanto CR+LF bet priekš *.nix vajag LF ielādē failu redaktorā un uzliec lai rindu pārnešna būtu unix formātā aaa.. un vel uzliec PHP kā apche moduli nevis CGI (visticamāk ka problēma pazudīs) Edited April 2, 2012 by Grey_Wolf Quote Link to comment Share on other sites More sharing options...
mad182 Posted April 2, 2012 Author Report Share Posted April 2, 2012 Faili visi pieder pareizajam lietotājam. Ar newline formatējumu arī viss ir ok, windows nelietoju kā sugu. Ir tā, ka uz servera ir arī citas lapas, un katrai lapai php izpildās ar savu lietotāju (izmantojot suPHP). Šo funkcionalitāti gribētos saglabāt. Domā vaina varētu būt ar to saistīta? Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 2, 2012 Report Share Posted April 2, 2012 a kādēļ negribi kā apche moduli? principā, ar šo erroru esmu sskŗies tikai tad ja php strādā kā cgi , tiko tas ir kā apche modulis tā problēmu nav ( vispār tas errors cik noprotu ir saistīts ar CGI būšanām ) Quote Link to comment Share on other sites More sharing options...
mad182 Posted April 2, 2012 Author Report Share Posted April 2, 2012 (edited) Gribējās ierobežot, lai katrai lapai php izpildītos ar savu lietotāju. Cik noprotu, ar mod_php to īsti izdarīt nevar. Bet nu anyway, tam jābūt kaut kādam izskaidrojumam, nevar tak būt, ka php nekrešo tikai kā apache modulis. Ārzemju forumi saka kaut ko par log failiem virs 2 gigabaitiem, bet man tur visa smagā suphp logošana ir atslēgta. Edited April 2, 2012 by mad182 Quote Link to comment Share on other sites More sharing options...
xPtv45z Posted April 2, 2012 Report Share Posted April 2, 2012 http://httpd.apache.org/docs/2.0/howto/cgi.html#suexec ? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.