在PHP应用程序中实现代理服务器

时间:2012-02-16 13:55:37

标签: php curl proxy

我研究了这个并且似乎无法找到答案。我想在我的PHP程序中实现代理解决方案,其中PHP与不同的IP通信,而不是服务器的IP。这是程序的作用:我有很多Blogger博客,我为很多人更新。为了让事情变得简单和有趣,我创建了一个php页面,使用zend自动将内容写入博客博客(参见下面的代码)。但是,谷歌现在在更新了几个不同的博客后,在服务器IP上设置了一个临时块。所以,我想在我的PHP请求中集成代理服务器(我已经找到了像10个地址一样可以旋转的seo代理的解决方案)。

我已经阅读了诸如“只使用cURL”之类的解决方案并查看了代码,但我不知道cURL并且不知道我是否必须更改编码。例如,我准备好关于cURL的事情都是关于“下载”特定页面而不使用唯一的IP地址上传到博客。理想情况下,我想在php的顶部放置一些内容,“在下面的所有说明中使用此代理IP”,然后在代码执行后关闭它,但我完全不知道如何使用它。

我已经粘贴了我的程序的主旨,写下了下面的博客。任何人都可以告诉我或指出我如何使用此解决方案实现代理的正确方向?

请注意我:我不是一名专业的PHP程序员。我通过粗暴的试验和错误实现了我的PHP解决方案,而不是很好的PHP知识......但是如果指向正确的方向我通常可以解决问题(例如:我必须修改下面的代码才能使用Blogger,但我不是确定究竟是什么,但它确实有效!)。 PS:我知道我可以通过像Scribfire这样的客户端应用程序来做到这一点,但我不想这样做。我想做这个工作:)

感谢所有人提前帮助解决这个问题。

require_once 'Zend/Loader.php';
Zend_Loader::loadClass('Zend_Gdata');
Zend_Loader::loadClass('Zend_Gdata_Query');
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
$user = $bloguser;
$pass = $blogpass;
$service = 'blogger';
$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service, null,
        Zend_Gdata_ClientLogin::DEFAULT_SOURCE, null, null, 
        Zend_Gdata_ClientLogin::CLIENTLOGIN_URI, 'GOOGLE');
$gdClient = new Zend_Gdata($client); 
$content= $body;
$url= $blogurl;
$urlforid = $url."feeds/posts/default";
$content1 = file_get_contents($urlforid );
$start = strpos($content1,'<id>');
$end = strpos($content1,'</id>',$start);
$table = substr($content1,$start,$end-$start);
$getblogid = explode("-", $table);
$blogID=$getblogid[1];
  $uri = 'http://www.blogger.com/feeds/' . $blogID . '/posts/default';
  $entry = $gdClient->newEntry();
  $entry->title = $gdClient->newTitle($title);
  $entry->content = $gdClient->newContent($content);
 $label = $gdClient->newCategory($keywords, 'http://www.blogger.com/atom/ns#');
$entry->setCategory(array(0 => $label));
 $entry->content->setType('text');
$createdPost = $gdClient->insertEntry($entry, $uri);  

0 个答案:

没有答案