HTTP_RequestでHTTPSのWebページ取得

 

<?php

require_once "HTTP/Request.php";

 

$AGENT = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";

$URL = "https://login.yahoo.co.jp:443/config/login";

$rq =new HTTP_Request($URL);

$rq->setHttpVer("1.1");

$rq->addHeader('User-Agent', $AGENT);

$rq->sendRequest();

 

echo $rq->getResponseBody();

 

?>

 

 

 

 

前回お話したPEARのHTTP_Requestクラスライブラリをご紹介したいと思います。
今回はHTTPSのWebページを取得する方法について考えて見ます。

PHPでHTTPSページを取得するためには、PHPにopensslライブラリが組み込まれている必要があります。
PHPコマンドの場合、
% php -m
で組み込まれているライブラリ群が確認できます。
ブラウザ経由ですと
<?
phpinfo();
?>
で確認できます。

ここでのライブラリとは、シェアードオブジェクト形式(バイナリライブラリ)でのPHPのダイナミックリンクライブラリになります。
------------------
実行例
------------------
% php -m
[PHP Modules]
ctype
db
gd
mbstring
mysql
openssl <---- これです。
overload
pcntl
pcre
pgsql
posix
session
shmop
standard
tokenizer
xml
zlib
------------------

HTTP_Requestライブラリのインストールについては下記を参照下さい。
■PEARモジュールのインストール方法
http://kimura.conv.jp/de/369/1600/

以下、HTTP_Requestクラスを使ったHTTPSページの取得サンプルです。
Yahooのhttpsログインページを取得します。

----
gethttps.php
----
#!/usr/local/bin/php -q
<?
require_once "HTTP/Request.php";
{
        $AGENT = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
        $URL = "https://login.yahoo.co.jp:443/config/login";
        $rq =new HTTP_Request($URL, $proxy_params);
        $rq->setHttpVer("1.1");
        $rq->addHeader('User-Agent',  $AGENT);
        $rq->sendRequest();

        print $rq->getResponseBody();
}
?>
----

HTTP_Requestライブラリには、POSTデータ送信、Basic認証メソッドやなどが用意されており大変便利です。
詳細については下記を参照下さい。
■PEAR:HTTP
http://pear.php.net/manual/en/package.http.php

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值