これを試して:
<?php
$fp = fsockopen("ssl://other-server.com", 443, $errno, $errstr);
if(!$fp) die($errno. " : " . $errstr);
$send =
"GET / HTTP/1.0\r\n".
"Host:other-server.com\r\n".
"Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n".
"\r\n";
fwrite($fp, $send);
while(!feof($fp)) {
echo fread($fp, 512);
}
?>
「ssl transport not available エラー メッセージ」が表示された場合は、「ソケット トランスポート "ssl" in PHP not enabled」を参照してください。
ホストが外部であり、おそらく無料の Web ホスティング サービスである場合は、運が悪い.. 最良のオプションは、SSL トランスポートが有効になっている Web ホストを特定することです。そうしないと、HTTPS プロトコルでの作業は単に準拠しません.
最後の「アウト」は、拡張機能を PHP 言語に動的にロードしようとすることです。一致する正確な拡張子 (dll/so) が必要です。
- ホスト上の PHP バージョン (phpinfo を参照)。
- ホストの CPU アーキテクチャ (unix、 を参照
passthru("cat /proc/cpuinfo");
)、たとえば amd64、i386..
- OS の「レイアウト」、.dll は Windows ホスト (IIS など) 用、.so は UNIX 用です。
使用する関数はdl
、ライブラリをロードするための別名ダイナミック リンクです。Windows ホストの場合は必要php_openssl.dll
でありphp_sockets.dll
、UNIX や OOops の場合は、php コアを再コンパイルする必要があります。
ハッピーハッキング:)
php-man-pages