J'avais écrit le code d'un certain PHP pour érafler périodiquement un URL et cela fonctionnait très bien. Alors l'emplacement doit avoir changé quelque chose et maintenant cela ne fonctionne pas. Cela fonctionne très bien par FireFox mais j'obtiens une demande du mauvais 400 par la COURBURE. Elle semble comme j'ai essayé chaque arrangement de curl_opt sans le succès. Je pense si je peux juste envoyer à l'exact les mêmes en-têtes de demande comme Firefox je devrait être bon. Mais comment faire cela ? le CURL semble ajouter quelques articles supplémentaires sans mon dire il to. Lately que j'avais placé mon propre en-tête avec le joli plus ou moins les mêmes articles que Firefox comme ceci : --------- $header = rangée (« accepter : texte/HTML, application/xhtml+xml, application/xml ; q=0.9, */* ; q=0.8 », « Accepter-Langue : en-nous, en ; q=0.5 », le " Acceptent-Charset : ISO-8859-1, utf-8 ; q=0.7, * ; q=0.7 », « Keep-Alive : 300 », « raccordement : keep-alive », « Cachette-Commande : max-age=0 », « Accepter-Codage : le gzip, dégonflent ») ; curl_setopt ($ch, CURLOPT_HTTPHEADER, $header) ; ------le *** du l'en-tête fonctionnant de FireFox est fondamentalement ceci : Host : rel= " nofollow " de » _blank » de target= de " http://www.example.com » de href= de www.example.com User-Agent : Mozilla/5.0 (Windows ; U ; Windows NT 6.0 ; LES EN-USA ; rv : Accept de 1.9.0.10) Gecko/2009042316 Firefox/3.0.10 GTB7.0 (.NET CLR 3.5.30729) : texte/HTML, application/xhtml+xml, application/xml ; q=0.9, */* ; q=0.8 Accept-Language : en-nous, en ; q=0.5 Accept-Encoding : gzip, deflate Accept-Charset : ISO-8859-1, utf-8 ; q=0.7, * ; q=0.7 Keep-Alive : 300 Connection : garder-alive Cookie : noscript=1 ; userid=1550521915 ; xsession=d9c73c024e99af04581a30521d3558ba ; datrval=1276442132-05e4a9265e4ac217a93748a73720f4becd56decd0c7d576d04eb8 Cache-Control: max-age=0 --------le
There est une ouverture que je cours par la courbure avant ma demande de la page que je veux érafler et une partie de ces biscuits y arrive. Mais je suis assez confiant que l'utilisateur et les biscuits de session ne sont pas le problème. Quand je regarde l'en-tête retourné par curl_getinfo je voir les quelques différences et schéma qu'un de ces derniers est le *** de problem. l'en-tête fonctionnant non de COURBURE que j'envoie est ceci : p HTTP/1.0 User-Agent du POST /datadirectory/viewinfo.ph : Mozilla/5.0 (Windows ; U ; Windows NT 6.0 ; LES EN-USA ; rv : Host du (.NET CLR 3.5.30729) de 1.9.0.10) Gecko/2009042316 Firefox/3.0.10 GTB7.0 : rel= " nofollow " de » _blank » de target= de " http://www.example.com » de href= de www.example.com Cookie : xsession=d9c73c024e99af04581a30521d3558ba ; userid=1550521915 ; noscript=1 ; datrval=1276442132-05e4a9265e4ac217a93748a73720f4becd56decd0c7d576d04eb8 Accept: texte/HTML, application/xhtml+xml, application/xml ; q=0.9, */* ; q=0.8 Accept-Language : en-nous, en ; q=0.5 Accept-Charset : ISO-8859-1, utf-8 ; q=0.7, * ; q=0.7 Keep-Alive : 300 Connection : garder-alive Cache-Control : max-age=0 Accept-Encoding : gzip, deflate Content-Length : 0 Content-Type : les différences d'application/x-www-form-urlencoded
The que je pense peuvent que ce soit sont : p de /datadirectory/viewinfo.ph de POTEAU de *** du -- Huh ? Pourquoi la COURBURE envoie-t-elle ceci comme poteau ? L'emplacement avec ceci est l'URL que je veux. rel= " nofollow " de » _blank » de target= de " http://www.example.com/datadirectory/viewinfo.php » de href= de Contenu-Longueur de *** du adirectory/viewinfo.php
de http://www.example.com/dat : 0 -- Pourquoi suis je lui envoyant la Contenu-Longueur : 0 ? Je voudrais omettre juste ceci puisque Firefox ne l'envoie pas. Mais la COURBURE l'ajoute automatiquement. Peut-être cela indique que la longueur de données de POTEAU est 0 ? Accepter-Codage de *** du
: le gzip, dégonflent. Je place ceci manuellement dans le CURLOPT_HTTPHEADER mais si je me lui exclus toujours ai le problème. *** du
que j'ai essayé avec la courbure d'arrangement à HTTP 1.0 et HTTP 1.1, ni l'un ni l'autre a-t-il fait des idées de difference.
Any ? ?
class= de
|