問題点

cURL コマンドを実行中、AEM からフィードバックは受信されません。コマンド実行後、ターミナルは何も表示しません。
例えば、以下のコマンドは、何も返しません

curl -u admin:pass http://IP:PORT/

原因

AEM サーバーによって送信された応答は、HTML 応答の本文にメッセージを含まないので、cURL コマンドは、ターミナルに結果を表示しません。代わりに、HTTP エラーコードが、HTTP 応答のヘッダーに表示されます。

通常、この問題は、curl コマンドで指定されたユーザー名とパスワードのいづれかが正しくないか、資格情報が AEM サーバーに予期通りに表示されないことです。問題を理解するには、cURL の -v フラグを使用してエラーの性質を理解します。

次のような結果を返すことができないコマンドは、次のとおりです。

FROM
curl -u admin: pass http://IP:PORT/
TO
curl -v -u admin: pass http://IP:PORT/

ターミナルウィンドウの結果は、許可されていない HTTP エラーコード 401 として、次のように見えることがあります。

*   Trying ::1...
* Connected to IP (::1) port PORT (#0)
* Server auth using Basic with user 'admin'
> GET /aem/start.html HTTP/1.1
> Host: IP:PORT
> Authorization: Basic YWRtaW46YWRtaW4=
> User-Agent: curl/7.43.0
> Accept: */*
> 
< HTTP/1.1 401 Unauthorized
< Date: Thu, 17 May 2018 14:05:09 GMT
* Authentication problem. Ignoring this.
< WWW-Authenticate: Basic realm="Sling (Development)"
< Transfer-Encoding: chunked
< 
* Connection #0 to host IP:PORT left intact

解決策

  • cURL コマンドで使用されている資格情報が正しいことを確認し、ユーザーが同じ資格情報を使用して AEM にログインできることを確認します。
  • ユーザーが同じ資格情報を使用して AEM にログインできる場合、この問題はおそらくユーザーの資格情報の配信に起因します。この場合、1 つの引用符で資格情報をラップすると、問題を解決できます。これは通常、$、@、などのパスワードに特殊文字がある場合です。
curl -v -u 'admin:pass' http://IP:PORT/

追加情報

-v フラグを
curl -v -u 管理者:管理者などの出力に HTTP ヘッダーを含める curl コマンドに追加することで他のエラーが表示された場合を確認できます。http://localhost:4502/crx/packmgr/service.jsp?cmd=help

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー