Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 12990|Svar: 5

[Web] Fejl, der ofte opstår på webservere, nedenfor er fejlloggen for langsomme forespørgsler

[Kopier link]
Opslået på 30/11/2014 21.09.51 | | |
[30-nov-2014 20:22:25]  [pool www] PID 10383
script_filename = /test/forum.php
[0x00007fe08a61eba8] curl_exec() /test/kilde/funktion/function_filesock.php:68
[0x00007fe08a61e960] _dfsockopen() /test/kilde/funktion/function_core.php:201
[0x00007fe08a61e7c0] dfsockopen() /test/source/class/class_image.php:123
[0x00007fe08a61e608] init() /test/kilde/klasse/class_image.php:45
[0x00007fe08a61e2a8] Tommelfinger() /test/kilde/funktion/function_block.php:410
[0x00007fe08a61e038] block_template() /test/kilde/funktion/function_block.php:177
[0x00007fe08a61def8] block_fetch_content() /test/kilde/funktion/function_block.php:120
[0x00007fe08a61de18] block_display_batch() /test/source/function/function_core.php:804
[0x00007fe08a61dbd0] block_display() /test/data/template/3_diy_forum_discuz.tpl.php:29
[0x00007fe08a61d828] +++ dump mislykkedes

[30-nov-2014 20:22:26]  [pool www] PID 10392
script_filename = /test/forum.php
[0x00007fe08a61eba8] curl_exec() /test/kilde/funktion/function_filesock.php:68
[0x00007fe08a61e960] _dfsockopen() /test/kilde/funktion/function_core.php:201
[0x00007fe08a61e7c0] dfsockopen() /test/source/class/class_image.php:123
[0x00007fe08a61e608] init() /test/kilde/klasse/class_image.php:45
[0x00007fe08a61e2a8] Tommelfinger() /test/kilde/funktion/function_block.php:410
[0x00007fe08a61e038] block_template() /test/kilde/funktion/function_block.php:177
[0x00007fe08a61def8] block_fetch_content() /test/kilde/funktion/function_block.php:120
[0x00007fe08a61de18] block_display_batch() /test/source/function/function_core.php:804
[0x00007fe08a61dbd0] block_display() /test/data/template/3_diy_forum_discuz.tpl.php:29
[0x00007fe08a61d828] +++ dump mislykkedes


Du ved, hvad der er årsagen til denne fejl, og den langsomme forespørgselskørsel vil registrere fejlen i mere end 5 sekunder, server nginx og php-fpm





Tidligere:Lære dig hurtigt at forstå filfunktionen i Discuz!, og du behøver ikke længere bede om hjælp til at ændre filer fra nu af
Næste:[Must-have til køb af togbilletter] 12306 Bypass omledningsbillet-grab v1.5 grøn version
Opslået på 01/12/2014 12.20.49 |
[0x00007fe08a61eba8] curl_exec() /test/source/function/function_filesock.php:68 Der er en fejl på linje 68, som kun kan hjælpe :L
 Udlejer| Opslået på 01/12/2014 13.45.36 |
Delver_Si Opslået den 1-12-2014 kl. 12:20
[0x00007fe08a61eba8] curl_exec() /test/source/function/function_filesock.php:68 Der er en fejl på linje 68, kun ...

Din søster, jeg ved også, at denne linje er forkert, men jeg ved ikke, hvad dette dokument er til
Opslået på 01/12/2014 21.01.08 |
/test/source/function/function_filesock.php  源代码给我
 Udlejer| Opslået på 01/12/2014 21.14.41 |
Delver_Si Opslået den 1-12-2014 kl. 21:01
/test/source/function/function_filesock.php  源代码给我

[mw_shl_code=php,true]<?php

/**
* [Discuz!] (C)2001-2099 Comsenz Inc.
* Dette er IKKE freeware, brugen er underlagt licensvilkår
*
* $Id: function_filesock.php 34441 2014-04-29 07:47:26Z nemohou $
*/

if(!defined('IN_DISCUZ')) {
        udgang('Adgang nægtet');
}

funktion _dfsockopen($url, $limit = 0, $post = '', $cookie = '', $bysocket = FALSK, $ip = '', $timeout = 15, $block = SAND, $encodetype = 'URLENCODE', $allowcurl = SANDE, $position = 0, $files = array( )) {
        $return = '';
        $matches = parse_url($url);
        $scheme = $matches['skema'];
        $host = $matches['vært'];
        $path = $matches['sti'] ? $matches['sti']. ($matches['forespørgsel'] ? '?'. $matches['forespørgsel'] : '') : '/';
        $port = !empty($matches['port']) ? $matches['port'] : ($scheme == 'http' ? '80' : '');
        $boundary = $encodetype == 'URLENCODE' ? '' : tilfældig(40);

        hvis($post) {
                hvis(!is_array($post)) {
                        parse_str($post, $post);
                }
                _format_postkey($post, $postnew);
                $post = $postnew;
        }
        if(function_exists('curl_init') & function_exists('curl_exec') & $allowcurl) {
                $ch = curl_init();
                $httpheader = array();
                hvis($ip) {
                        $httpheader[] = "Vært: ".$host;
                }
                hvis($httpheader) {
                        curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheader);
                }
                curl_setopt($ch, CURLOPT_URL, $scheme.'://'.( $ip ? $ip: $host). ($port ? ':'.$port : '').$path);
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, falsk);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, falsk);
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, sandt);
                curl_setopt($ch, CURLOPT_FOLLOWLOCATION, sandt);
                curl_setopt($ch, CURLOPT_HEADER, 1);
                hvis($post) {
                        curl_setopt($ch, CURLOPT_POST, 1);
                        if($encodetype == 'URLENCODE') {
                                curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
                        } ellers {
                                foreach($post som $k => $v) {
                                        if(isset($files[$k])) {
                                                $post[$k] = '@'.$files[$k];
                                        }
                                }
                                foreach($files som $k => $file) {
                                        if(!isset($post[$k]) & file_exists($file)) {
                                                $post[$k] = '@'.$file;
                                        }
                                }
                                curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
                        }
                }
                hvis($cookie) {
                        curl_setopt($ch, CURLOPT_COOKIE, $cookie);
                }
                curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
                curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
                $data = curl_exec($ch);
                $status = curl_getinfo($ch);
                $errno = curl_errno($ch);
                curl_close($ch);
                if($errno || $status['http_code'] != 200) {
                        vender tilbage;
                } ellers {
                        $GLOBALS['filesockheader'] = substr($data, 0, $status['header_size']);
                        $data = substr($data, $status['header_size']);
                        Returner !$limit ? $data : substr($data, 0, $limit);
                }
        }

        hvis($post) {
                if($encodetype == 'URLENCODE') {
                        $data = http_build_query($post);
                } ellers {
                        $data = '';
                        foreach($post som $k => $v) {
                                $data .= "--$boundary\r\n";
                                $data .= 'Indhold-Disposition: form-data; name="'.$k.'"''. (isset($files[$k]) ? '; filename="'.basename($files[$k]).'"; Indholdstype: applikation/oktetstrøm' : '')." \r\n\r\n";
                                $data .= $v." \r\n";
                        }
                        foreach($files som $k => $file) {
                                if(!isset($post[$k]) & file_exists($file)) {
                                        hvis($fp = @fopen($file, 'r')) {
                                                $v = fread($fp, filstørrelse($file));
                                                fclose($fp);
                                                $data .= "--$boundary\r\n";
                                                $data .= 'Indhold-Disposition: form-data; name="'.$k.'"; filename="'.basename($file).'"; Indholdstype: applikation/oktetstrøm'." \r\n\r\n";
                                                $data .= $v." \r\n";
                                        }
                                }
                        }
                        $data .= "--$boundary\r\n";
                }
                $out = "POST $path HTTP/1.0\r\n";
                $header = "Accepter: */*\r\n";
                $header .= "Accept-Sprog: zh-cn\r\n";
                $header .= $encodetype == 'URLENCODE' ? "Indholdstype: application/x-www-form-urlencoded\r\n" : "Indholdstype: multipart/form-data; grænse=$boundary\r\n";
                $header .= 'Indhold-længde: '.strlen($data)." \r\n";
                $header .= "Brugeragent: $_SERVER[HTTP_USER_AGENT]\r\n";
                $header .= "Vært: $host:$port\r\n";
                $header .= "Forbindelse: Tæt på\r\n";
                $header .= "Cache-Control: no-cache\r\n";
                $header .= "Cookie: $cookie\r\n\r\n";
                $out .= $header;
                $out .= $data;
        } ellers {
                $out = "HENT $path HTTP/1.0\r\n";
                $header = "Accepter: */*\r\n";
                $header .= "Accept-Sprog: zh-cn\r\n";
                $header .= "Brugeragent: $_SERVER[HTTP_USER_AGENT]\r\n";
                $header .= "Vært: $host:$port\r\n";
                $header .= "Forbindelse: Tæt på\r\n";
                $header .= "Cookie: $cookie\r\n\r\n";
                $out .= $header;
        }

        $fpflag = 0;
        hvis(!$fp = @fsocketopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout)) {
                $context = array(
                        'http' => array(
                                'metode' => $post ? 'POST': 'FÅ',
                                'header' => $header,
                                'content' => $post,
                                'timeout' => $timeout,
                        ),
                );
                $context = stream_context_create($context);
                $fp = @fopen($scheme.'://'.( $ip ? $ip : $host).':'.$port.$path, 'b', falsk, $context);
                $fpflag = 1;
        }

        hvis(!$fp) {
                return '';
        } ellers {
                stream_set_blocking($fp, $block);
                stream_set_timeout($fp, $timeout);
                @fwrite($fp, $out);
                $status = stream_get_meta_data($fp);
                hvis(!$status['timed_out']) {
                        mens (!feof($fp) & !$fpflag) {
                                $header = @fgets($fp);
                                $headers .= $header;
                                Hvis($header && ($header == "\r\n" ||  $header == "\n")) {
                                        pause;
                                }
                        }
                        $GLOBALS['filesockheader'] = $headers;

                        hvis($position) {
                                for($i=0; $i<$position; $i++) {
                                        $char = fgetc($fp);
                                        hvis($char == "\n" && $oldchar != "\r") {
                                                $i++;
                                        }
                                        $oldchar = $char;
                                }
                        }

                        hvis($limit) {
                                $return = stream_get_contents($fp, $limit);
                        } ellers {
                                $return = stream_get_contents($fp);
                        }
                }
                @fclose($fp);
                vend tilbage $return;
        }
}

funktion _format_postkey($post, &$result, $key = '') {
        foreach($post som $k => $v) {
                $_k = $key ? $key.' ['.$k.']' : $k;
                if(is_array($v)) {
                        _format_postkey($v, $result, _k $);
                } ellers {
                        $result[$_k] = $v;
                }
        }
}

?>[/mw_shl_code]
Opslået på 02/12/2014 00.08.32 |
Jeg forstår det ikke
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com