PHP CURL 内存泄露问题解决方法
《PHP实例:PHP CURL 内存泄露问题解决方法》要点: phpcurl使用privoxy代理访问https://www.google.com/search?q=xxxPHP编程 curl配置平淡无奇,长时间运行发现一个严重问题,内存泄露!不论用单线程和多线程都无法避免!是curl访问https站点的时候有bug! 经过反复调试找到解决办法,curl配置添加如下几项解决问题:PHP编程
代码如下:
[CURLOPT_HTTPPROXYTUNNEL] = true; [CURLOPT_SSL_VERIFYPEER] = false; [CURLOPT_SSL_VERIFYHOST] = false; CURLOPT_HTTPPROXYTUNNEL具体说明stackoverflow上有,直接贴原文:PHP编程 Without CURLOPT_HTTPPROXYTUNNELPHP编程 Without CURLOPT_HTTPPROXYTUNNEL : You just use the proxy address/port as a destination of your HTTP request. The proxy will read the HTTP headers of your query,forward your request to the destination (with your HTTP headers) and then write the response to you.PHP编程 Example steps :PHP编程 1)HTTP GET /index.html sent to 1.1.1.1 (proxy) With CURLOPT_HTTPPROXYTUNNELPHP编程 With CURLOPT_HTTPPROXYTUNNEL : You ask the proxy to open a direct binary connection (like HTTPS,called a TCP Tunnel) directly to your destination by doing a CONNECT HTTP request. When the tunnel is ok,the proxy write you back a HTTP/1.1 200 Connection established. When it received your browser start to query the destination directly : The proxy does not parse HTTP headers and theoretically does not read tunnel datas,it just forward it,thats why it is called a tunnel !PHP编程 Example steps :PHP编程 1)HTTP CONNECT sent to 1.1.1.1 http://stackoverflow.com/questions/12288956/what-is-the-curl-option-curlopt-httpproxytunnel-meansPHP编程 欢迎参与《PHP实例:PHP CURL 内存泄露问题解决方法》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |