2

サーバーの 1 つで安全な Web ページにアクセスしようとしています。Web ページは、ユーザー名とパスワードを必要とする .htaccess で保護されたディレクトリ内にあります。ファイルにアクセスできるように、libcurlに認証リクエストを送信させようとしています。さまざまな場所でいくつかのガイダンスを見つけた後、うまくいくはずだと思うものを思いつきましたが、うまくいきません。

$url="https://www.myurl.com/htaccess_secured_directory/file.php";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); 
curl_setopt($ch, CURLOPT_USERPWD, 'myusername:mypassword');
$result = curl_exec($ch);
echo $result;

file.php ファイルは単に "Hello World!" をエコーするはずですが、$result 変数は空白になっています。curl からエラー メッセージを取得する方法はありますか? 私は何か間違ったことをしていますか?CURLLAUTH_ALL も成功せずに使用しましたが、とにかく基本的な認証しかないと思います。

4

1 に答える 1

2

curl_errno()とを使用しcurl_error()て、エラー情報を取得します。つまり、次のようになります。

$url="https://www.myurl.com/htaccess_secured_directory/file.php";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); 
curl_setopt($ch, CURLOPT_USERPWD, 'myusername:mypassword');
$result = curl_exec($ch);

if(curl_errno($ch))
{
  echo 'Curl error: ' . curl_error($ch);
}
else
{    
  echo $result;
}

curl_close($ch);

利用可能なエラー コードは、ここに記載されています。

于 2009-08-29T00:57:17.320 に答える