2016-07-17 2 views
3

私はプリンタを持っています(実際にはいくつか)、ステータスページを取得して、電源が低いときには小さなパースサーに教えてもらいたいと思います。プリンターが読み込まれる前に無効なSSL証明書の警告をスローすることを除いて大きな違いはありません。私はこのようなページを取得するためにwgetを使用することができます。webspageをPHPの配列として取得する際に無効なSSL証明書を無視するにはどうすればよいですか?

$wget -m --no-check-certificates 10.4.102.125 

私はむしろちょうどそれを行うには、そのあまり複雑でない場合は、PHPを使用すると思います。ここ

は、私は配列としてページをダウンロードしてるかの基本的な例です。

<?php 
$target = "http://10.4.102.125"; 
$downloaded_page_array = file($target); 

for($i=0; $i<count($downloaded_page_array); $i++) 
    echo $downloaded_page_array[$i]; 
?> 

は、前述したように、どのように私はwebspageを得るには、無効なSSL証明書を無視することができますし、ちょうど私が取得したいページに移動しますPHPの配列?

サーバーの設定を変更したくありません。また、これらのプリンタのSSL証明書を正常にアップグレードする方法を決して解明していません。

答えて

1

を使用できカール

と無効なSSLのwarrningの使用をスキップするには、次のオプションがあります。例えば

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 

<?php 
     // create curl resource 
     $ch = curl_init(); 

     // set url 
     curl_setopt($ch, CURLOPT_URL, "http://10.4.102.125"); 

     //return the transfer as a string 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

     curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 

     // $output contains the output string 
     $output = curl_exec($ch); 

     // close curl resource to free up system resources 
     curl_close($ch);  
?> 
1

あなたが必要なページへのを取得するために、ラッパーを使用しているのでcontext options and parametersと設定します。この場合、オプションは、あなたが所属するSSLを探しています(また、HTTPSに適用されている)と私はあなたがこれを無効にしたいと考えている:

verify_peerはブール

は、SSL証明書の検証を要求します。

あなたはコンテキストを設定したら、fileの三番目の引数として渡す必要があります。

array file (string $filename [, int $flags = 0 [, resource $context ]]) 
関連する問題