2012-05-19 4 views
0

내 CI 앱이 지금까지 제대로 작동했습니다.Codeigniter 앱의 오류 500 오류

그러나 더 긴 SQL 쿼리 (예 : 약 50 개의 블로그 게시물이 표시된 홈 페이지)가 요청 될 때 심각한 문제가 있음을 발견했습니다.

때때로 페이지가 잘로드됩니다. 예기치 않게, 동일한 내용을 변경하지 않고 동일한 페이지를 다시로드 할 때까지 브라우저는 Apache 500 오류가 발생하기 전까지 계속 멈춰 있습니다. 이것은 여러 브라우저에서 발생합니다.

CI 오류 로그에 아무것도 표시되지 않습니다. PHP 오류 로그에는 아무것도 표시되지 않습니다.

작은 쿼리 (예 : 20 개 게시물)에서 문제가되지 않는 것으로 나타 났지만, 문제와 관련이 있는지 확신 할 수 없습니다. 결국 몇 번의 시도에서 50 개의 게시물을 다운로드합니다.

나는 이것을 자세히 설명하기가 어렵다는 것을 알고 있지만 누군가가 디버깅하는 방법에 대한 조언을 해줄 수 있다면 매우 감사 할 것입니다. 다행스럽게도 정보를 추가 할 수 있습니다.

이 앱은 Plesk 9 RHEL 서버, PHP 5.3.8, MySQL 5.5.17, CI 2.1.0에서 실행됩니다.

여기에 PHP 오류 로그 파일

-rw-rw-r-- 1 apache  apache    0 May 19 10:46 php_errors.log 

php.ini의 정보

error_log /var/log/php_errors.log /var/log/php_errors.log 
log_errors On      On 
+0

페이지가 twitter 등의 외부 통화를 호출합니까? – AlunR

답변

0

를 사용하여 불꽃 디버그 도구 모음 : http://getsparks.org/packages/Debug-Toolbar/versions/HEAD/show

그런 다음 쿼리로드 걸릴 시간을보고, 메모리를 확인하십시오. 오류가 발생할 때까지 천천히 게시물 수를 20에서 30, 50에서 100 등으로 늘리십시오.

시간 초과 값이 낮게 (230 정도 여야 함) 구성되었거나 쿼리가 실제로 제대로 작성되지 않아 비효율적이어서 서버가 결과를 반환하는 데 너무 오래 걸리는 경우 PHP 시간 초과가 발생했다고 생각됩니다. 더 큰 쿼리.

+0

500 오류가 간헐적이기 때문에 쿼리가 정상이라고 생각합니다. 오류가 없으면 페이지가 두 번째보다 적게로드됩니다. 내 아파치 로그를 보면'[Sat May 19 21:27:21 2012] [ 경고] mod_fcgid : 프로세스 21174 정상 종료 실패, SIGKILL 전송 [Sat May 19 21:27:27 2012] [공지] mod_fcgid : process /var/www/vhosts/example.com/httpdocs/blog/index.php(21174)) 종료 (통신 오류), 중지 신호 9 '- 이것은 500 오류에서 발행됩니다. 그러나 무엇을해야할지 확실하지 않습니다. – pepe

+0

이 500 오류 코드는 서버와 관련이 없으므로 코드에 문의해야합니다 귀하의 서버 관리자는 조사를 요청합니다. 아마도 귀하의 요청을 처리하지 못하는 데이터베이스 서버와 관련이 있을지도 모릅니다. 따라서 fcgid가 강제로 삭제됩니다. – zaherg

+0

관리자가 증가했다고 'memory_limit = 128M에서 256M까지 de fault_socket_timeout = 60에서 120'까지 - 과장된 소리가 들리는가요? 지금은 더 적은 오류 – pepe