这段代码总是在2m左右出现504 Proxy Timeout错误,什么原因?
这段代码当$fucknum比较大时,比如1000时,就会出现504 Proxy Timeout错误,而且报错后程序不再继续执行,好像停止不前了,$fucknum值比较小时不会出现这个错误,什么原因?请各位指点下
function autonewnewegg($arr){ $fucknum=intval($arr['fucknum']); // # 获取抓取条数的整数值 $outime=$fucknum*2+100; set_time_limit($outime);//设置脚本执行时间 $nextnum=20;//连续查找10次不存在则终止 $sn=$arr['sn']; $acl=explode("-",$sn); $acl_1=preg_replace('/[^0-9]+/','',$acl[1]); //二次 $a=$b=0; //二次 while($fucknum>0){ $arr1 = $arr2 = array(); if($acl[2]<1000&&$acl_1<100){ $acl[2]=str_pad("$acl[2]",3,'0',STR_PAD_LEFT); $acl_1=str_pad("$acl_1",2,'0',STR_PAD_LEFT); $acl[1]="c".$acl_1; $arr_in=implode("-",$acl); $url=$GLOBALS['competitor'][1]['product'].$arr_in.'.htm'; if($acl[2]==999){ $acl_1=$acl_1+1; $acl[2]=001; }else { ++$acl[2]; } }elseif($acl[0]<=99){ $acl[0]=str_pad("$acl[0]",2,'0',STR_PAD_LEFT); $arr_in=implode("-",$acl); $acl[2]=001; $acl_1=01; ++$acl[0]; $url=$GLOBALS['competitor'][1]['product'].$arr_in.'.htm'; } $str = file_get_contents($url); if(!$str){ $fucknum--; }else{ $preg ='/href="http:\/\/www\.newegg\.com\.cn\/SubCategory\/(\d*)\.htm">/'; $preg2 ='/<h1>(.*)<\/h1>/'; $str = iconv("gbk","UTF-8",$str); preg_match($preg,$str,$arr1); preg_match($preg2,$str,$arr2); if(empty($arr1) || empty($arr2)){ $fucknum--; }else{ $price = $this->ocr_newegg($url); if ($price == false||$price=='.'){ $price = $this->ocr_newegg1($url); } if($price == false){ }else{ $autoarr=array('cid'=>$arr1[1],'name_newegg'=>$arr2[1],'price_newegg'=>$price,'sn_newegg'=>$arr_in); $this->addnew_newegg($autoarr); } $fucknum--; } } } return true; }
回复讨论(解决方案)
超时,就没办法了。
set_time_limit(0);
?
让脚本永不超时:set_time_limit(0);
超时,就没办法了。
set_time_limit(0);
?
已经设置了,$outime是根据$fucknum动态改变的啊,小数据量时怎么不超时,
set_time_limit($outime);//设置脚本执行时间
让脚本永不超时:set_time_limit(0); 设置了,还是会出现那个错误,不是这个原因
报:504 Proxy Timeout的原因很可能是
外网卡在收到了内网卡来自客户端的访问请求以后,在同一时间,马上转发给了目的地网站服务器,但是目的地网站服务器没有及时响应。3秒之后重发一次,6秒之后再重发一次,由于一直没有收到响应内网卡不得不返回给客户端HTTP/1.1 504 Proxy Timeout。
报:504 Proxy Timeout的原因很可能是
外网卡在收到了内网卡来自客户端的访问请求以后,在同一时间,马上转发给了目的地网站服务器,但是目的地网站服务器没有及时响应。3秒之后重发一次,6秒之后再重发一次,由于一直没有收到响应内网卡不得不返回给客户端HTTP/1.1 504 Proxy Timeout。 难道是要file_get_contents的网站做了限制?
引用 5 楼 heyc1998 的回复:
报:504 Proxy Timeout的原因很可能是
外网卡在收到了内网卡来自客户端的访问请求以后,在同一时间,马上转发给了目的地网站服务器,但是目的地网站服务器没有及时响应。3秒之后重发一次,6秒之后再重发一次,由于一直没有收到响应内网卡不得不返回给客户端HTTP/1.1 504 Proxy Timeout。
难道是要file_get_con……
你可以在每次循环之后都sleep长点时间,看是否还有这样的现象出现!~应该是远程服务器的问题!
引用 6 楼 helloqhq 的回复:
引用 5 楼 heyc1998 的回复:
报:504 Proxy Timeout的原因很可能是
外网卡在收到了内网卡来自客户端的访问请求以后,在同一时间,马上转发给了目的地网站服务器,但是目的地网站服务器没有及时响应。3秒之后重发一次,6秒之后再重发一次,由于一直没有收到响应内网卡不得不返回给客户端HTTP/1.1 504 Proxy Ti…… 如何在报了504 Proxy Timeout错误后,使循环继续执行下去,现在是报错后程序就出问题,好像while循环结束不了,不返回true。
引用 6 楼 helloqhq 的回复:
引用 5 楼 heyc1998 的回复:
报:504 Proxy Timeout的原因很可能是
外网卡在收到了内网卡来自客户端的访问请求以后,在同一时间,马上转发给了目的地网站服务器,但是目的地网站服务器没有及时响应。3秒之后重发一次,6秒之后再重发一次,由于一直没有收到响应内网卡不得不返回给客户端HTTP/1.1 504 Proxy Ti…… 也就是说这个错误有个返回值,如何才能屏蔽这个返回值?
引用 6 楼 helloqhq 的回复:
引用 5 楼 heyc1998 的回复:
报:504 Proxy Timeout的原因很可能是
外网卡在收到了内网卡来自客户端的访问请求以后,在同一时间,马上转发给了目的地网站服务器,但是目的地网站服务器没有及时响应。3秒之后重发一次,6秒之后再重发一次,由于一直没有收到响应内网卡不得不返回给客户端HTTP/1.1 504 Proxy Ti…… 我有两个死帖,随便回复下,给分
http://topic.csdn.net/u/20101128/19/0fedb777-1901-4460-945b-ddc2a8787ba0.html
http://topic.csdn.net/u/20101209/17/438c616b-3132-41bc-a329-86f84e46a72c.html
我也出现这个问题了,后台还没结束,前台就超时了,撸主解决了吗

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Laravel simplifie la gestion des données de session temporaires à l'aide de ses méthodes de flash intuitives. Ceci est parfait pour afficher de brefs messages, alertes ou notifications dans votre application. Les données ne persistent que pour la demande ultérieure par défaut: $ demande-

L'extension PHP Client URL (CURL) est un outil puissant pour les développeurs, permettant une interaction transparente avec des serveurs distants et des API REST. En tirant parti de Libcurl, une bibliothèque de transfert de fichiers multi-protocol très respectée, PHP Curl facilite Efficient Execu

Alipay Php ...

Laravel fournit une syntaxe de simulation de réponse HTTP concise, simplifiant les tests d'interaction HTTP. Cette approche réduit considérablement la redondance du code tout en rendant votre simulation de test plus intuitive. L'implémentation de base fournit une variété de raccourcis de type de réponse: Utiliser illuminate \ support \ faades \ http; Http :: faux ([[ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

Voulez-vous fournir des solutions instantanées en temps réel aux problèmes les plus pressants de vos clients? Le chat en direct vous permet d'avoir des conversations en temps réel avec les clients et de résoudre leurs problèmes instantanément. Il vous permet de fournir un service plus rapide à votre personnalité

L'article traite de la liaison statique tardive (LSB) dans PHP, introduite dans PHP 5.3, permettant une résolution d'exécution de la méthode statique nécessite un héritage plus flexible. Problème main: LSB vs polymorphisme traditionnel; Applications pratiques de LSB et perfo potentiel

L'article examine l'ajout de fonctionnalités personnalisées aux cadres, en se concentrant sur la compréhension de l'architecture, l'identification des points d'extension et les meilleures pratiques pour l'intégration et le débogage.

L'article traite des fonctionnalités de sécurité essentielles dans les cadres pour se protéger contre les vulnérabilités, notamment la validation des entrées, l'authentification et les mises à jour régulières.
