2011-10-02 3 views
2

좋아요, 그래서이 보드를 (NGINX + PHP-FPM) 보드에 업로드 할 때마다 최종적으로 504 Gateway Time-out이 될 때까지 속도가 느려집니다. 그래서 당신이 생각하는 것을 알고 있습니다. " 그 nginx.conf 및 php-fpm 설정 ", 어젯밤에 거의 완벽하게 꼬집어서, 내 서버가 훌륭하게 실행 중입니다. 그러나, 그 하나의 특정 GIF는 여전히 나사, PHP는 거의 100 % (나는 내 ​​서버에 라인 쿼드 코어 프로세서의 위대한 가지고, 내 서버가 원시적 인 절대 아니다) FPM을 실행합니다.GIF 업로드와 관련된 미스테리 문제가 있습니까?

그래서 더 이상한 곳을 알고 싶습니까? 나는 문제의 원인이되는 것 (약 600KB 정도)보다 큰 차원으로 10MB GIF를 업로드했고, 서버가 그들을 엄청나게 빠르게 처리하도록했다.

괜찮 았어! 이제 로그에 들어가 봅시다. error_log는이 문제와 관련하여 아무 것도 출력하지 않습니다. 그래서 나는 ahlead 갔고 PHP FPM 구성 내에서 느린 로그를 설정합니다. 여기

문제입니다 : if (preg_match("/png/", $system[0]) || preg_match("/gif/", $system[0])) { $colorcount = imagecolorstotal($src_image); if ($colorcount <= 256 && $colorcount != 0) { imagetruecolortopalette($dst_image,true,$colorcount); imagepalettecopy($dst_image,$src_image); $transparentcolor = imagecolortransparent($src_image); **imagefill($dst_image,0,0,$transparentcolor);** imagecolortransparent($dst_image,$transparentcolor); }

라인 (107) : fastImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $thumb_w, $thumb_h, $old_x, $old_y, $system);

upload.php로, 라인 (182) [02-Oct-2011 05:54:17] [pool www] pid 76004 script_filename = /usr/local/www/mydomain/post.php [0x0000000805afc6d8] imagefill() /usr/local/www/mydomain/inc/post.php:159 [0x0000000805afb908] fastImageCopyResampled() /usr/local/www/mydomain/inc/post.php:107 [0x0000000805af4240] createThumbnail() /usr/local/www/mydomain/classes/upload.php:182 [0x0000000805aeb058] HandleUpload() /usr/local/www/mydomain/post.php:235

좋아, post.php (굵은 라인 159)를 살펴 보자 (굵게 표시) : **if (!createThumbnail($this->file_location, $this->file_thumb_location, KU_REPLYTHUMBWIDTH, KU_REPLYTHUMBHEIGHT))** { exitWithErrorPage(_gettext('Could not create thumbnail.'));

$upload_class->HandleUpload();

그래서 내가 무엇을 할 수 있습니다)

다른 post.php (라인 235) 표시? 이 문제를 어떻게 해결할 수 있습니까? 나는 이것이 어려운 문제라는 것을 알고있다. 그러나 너희들이 나에게 어떤 의견을 줄 수 있다면 크게 감사 할 것이다.

사람이 여기에, 호기심있는 GIF의 경우 아, 그리고 : http://i.imgur.com/rmvau.gif

+0

: 2011년 10월 2일 13시 44분 33초을 [경고] 76825 0 # : 클라이언트 요청 본문이 임시로 버퍼링 * 250 서버 : .org, 요청 : "POST /post.php HTTP/1.1", 호스트 : "www.", 리퍼러 : http : //www.windowsazure.com/media/devcenter/documentation/v2/tmp/nginx/client_body_temp/0000000008 // www. " 2011/10/02 13:45:59 [오류] 76825 # 0 : * 업스트림 클라이언트에서 응답 헤더를 읽는 동안 * 250 업스트림 조기 종료 연결 : MY.IP.AD .., server : .org, 요청 : "POST /post.php HTTP/1.1 ", 업스트림 :"fastcgi : // unix : /tmp/php.sock : ", 호스트 :"www. ", 리퍼러 :"http : // www. " – Smith99

+0

아무도 도와 줄 수 있습니까? – Smith99

답변

관련 문제