[PHP-users 33689] Re: phpを使用して、https://のページを文字列で取得したいです。

tanig108 @ edogawa.home.ne.jp tanig108 @ edogawa.home.ne.jp
2008年 6月 24日 (火) 03:31:11 JST


聖 様、回答ありがとうございます。

> > 同じような記事も見つけましたが、一致した内容か分からず質問させていただき
まし
> > た。
>
> とのことですが、
> [PHP-users 22198]Re: file_get_contentsによるhttpsアクセスが失敗する
> http://ml.php.gr.jp/pipermail/php-users/2004-June/022720.html
> のことでしょうか?
> (仮にそうだとすれば、確かにここでの問題とは違うようです。)
私が確認したのは、この記事ではありませんでした。
ただ、php5と言うことで、この記事を確認すれば質問の必要も無かったようです。

> (1)
> >
$URL="https://jizen.kuronekoyamato.xx.xx/jizen/cr/jz/wb/CRJZWBJS0050.jsp";
> > では、新しいリンク先にページが飛んでしまいます。
> > 飛ばないように、もしくは、リンク先のURL取得が目的です。
>
> file_get_contents は目的に適わないと思います。
> リンク先(リダイレクト先)の URL 取得が目的とのことなので、
> 「レスポンスヘッダを取得する」というコーディングを行う必要があります。
>
> これは、 PEAR や PECL の HTTP 拡張パッケージなどで対応できると思います。
> http://pear.php.net/manual/ja/package.http.http-request.response-eval.php
> http://www.php.net/manual/ja/function.http-get.php
了解です。
また、現在私の考えている取り方としては、「取得したfile_get_contentsの中にURL
が存在しているので
それを再びgetすれば十分かな?」などと考えています。

> (2)
> > $URL="https://www.deal.XXXXX.co.jp/ITS/login/MemberLogin.jsp";
> > では、以下のメッセージが表示されます。
> > 「Unable to find the socket transport "https" - did you forget to enable
it
> > when you configured PHP」
> > $sの中身はNULLのようです。
>
> 関連する DLL が正しく読み込まれていれば通常このエラーは出ないと思います。
>
> 可能性としては、
> CLI 版と ISAPI 版との間で php.ini の読み込まれ方に差があるのではないか、と
想像しました。
> ( php -m で openssl が出ても、 phpinfo() で出ないことがあります。)
>
> 的外れだったらごめんなさい(´・ω・`)
phpinfo()でも、enableと出力されているので原因は不明ですが、
実装の方法が何かしらまずかったようです。
現在は、問題は解決し、httpsのファイルの内容が取得できるようになりました。
特に原因があるわけではなく、実装の仕方が悪かったようでした。

素早い回答ありがとうございました。

> --
> 聖 歩美
> hijiri.walk @ gmail.com
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3

以上よろしくお願いいたします。




PHP-users メーリングリストの案内