douduo2407 2012-03-22 20:37
浏览 35
已采纳

脚本在一个主机与另一个主机之间的位置差异

I have the following function that retrieves an image from a twitter feed, the parameter "url" is fed a url such as the following:

'http://t.co/ilGWtpkV'

Because this is a shortened url, the script then returns the location of that url:

http://www.facebook.com/photo.php?pid=1425727&l=1f2c2b6432&id=358116934207463

The script then parses out the html contents of this page, and returns the source of url elements by tag.

This is a working example of the script: http://psuprob.herobo.com/pullmeme.php

In this example the images are compared with the entries via time-stamp to the entries existing in the database, if there are no entries with the same time-stamp, they are added, otherwise, they are not.

This is the function that is used:

getImages('http://t.co/ilGWtpkV');

function getImages($url) {
  $url1 = $url;
  require_once('../scripts/simple_html_dom.php'); 
  require_once('../scripts/url_to_absolute.php');

  $response = get_headers($url, 1);
  //Get the location property of the first response header. 
     (returns: http://fb.me/1dnoCICkf)
  $location = $response["Location"];
  $url3 = $location;

  $response2 = get_headers($url3,1);
  //Get the location property of the second response header.
     (returns: the full facebook url)
  $location2 = $response2["Location"];
  $url4 = $location2;

  //image parser
  if(isset($response2["Location"])) { //tests to make sure url is present
  $html = file_get_html($url3);  //function call to return page as html elements

  foreach($html->find('img') as $element) { //finds every img as element
    $bump = url_to_absolute($url4, $element->src);  //converts src to absolute url
      return $bump;
    } 
  }
  else {
    echo "url is not valid (Probably not an image)";
  }

}

This function works perfectly on 000webhost servers, however on godaddy's servers, it returns NULL. Any help would be greatly appreciated.

  • 写回答

1条回答 默认 最新

  • doushi9444 2012-03-22 21:26
    关注

    if you use cURL on GoDaddy server to get pages, it is necessary for you to specify their proxy server, like this:

    curl_setopt($ch,CURLOPT_PROXYTYPE,CURLPROXY_HTTP);
    curl_setopt($ch,CURLOPT_PROXY,'http://proxy.shr.secureserver.net:3128');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。