0

このコードをローカルの PHP サーバーで試してみました...すべてが完全に機能します..しかし、このスクリプトを Web ホスティング サーバーにアップロードすると、認証が機能しませんでした。このスクリプトが Web サーバーで機能しない理由を説明できる人はいますか?

"Authorization: Basic " . base64_encode("$username:$password")

脚本:

$url = 'http://xxx.xxx.xxx.xxx:9080/apex/api/query?filtername=UNITSUMM&PARM_CONTAINER='.$contrNo.'&operatorId=BIG&complexId=KSA&facilityId=DMM&yardId=RRY';
$context = stream_context_create(array(
    'http' => array(
    'header'  => "Authorization: Basic " . base64_encode("$username:$password")
    )
));

$data = @file_get_contents($url, false, $context);
$convert = explode("\n", $data);
4

1 に答える 1

1

表示されているエラー メッセージを投稿していただけるか、エラー ログで確認できると助かります。

ホスティング プロバイダーがポート 9080 への送信接続を許可していないか、他の基準に基づいて接続をブロックしている可能性があります。

base64_encode("$username:$password") の値を出力すると、スクリプトをデバッグできる可能性があります。おそらく、これらの変数のいずれかが正しい値に設定されていません。

于 2013-09-29T12:28:08.920 に答える