4

HTTP/Apache で提供している Yum リポジトリの構成で問題が発生しました。

このレポは DMZ にあるため、http 基本認証を使用し、リスニング ポートを 80 以外に設定したいと考えています。次のようにbaseurlを設定することでそれをやろうとしていました(私のレポファイルから):

baseurl=http://user:password@<my-ip>:<my-non-80-port>/yum/RHEL/7/base/$basearch/

yum.conf のドキュメントには、上記のように URL にユーザー名/パスワードを追加することで、基本的な http 認証を実行できることが示されています。yum search mysqlクライアントから実行しようとすると、次のエラーが表示されます。

[Errno 14] HTTP Error 401: Authorization Required

これは、ポートを指定する余分な「:」が yum による私の URL の解析を混乱させていることを示していました。ポートを削除し、サーバーをポート 80 に戻すと、機能します。

したがって、基本的な http 認証を実行できず、Web サーバーがリッスンするポート番号を変更できないようです。username新しいバージョンの Yum にはディレクティブとディレクティブがあることに気付きましたpasswordが、私のバージョンにはこのディレクティブがないようです (yum-3.2.22-37.0.1.el5 を実行しています)。これに対する回避策はありますか?

4

1 に答える 1

0

yum 構成に次の行を追加してプラグインをオフにすることで、これを回避しました。

plugins=0

ベース yum アップデーターは baseurl からの認証情報を使用して正常に動作していたため、回避策が機能したと思いますが、一部のプラグイン (fastmirror プラグインなど) は認証を適切に記憶していませんでした。したがって、プラグインを有効にせずに行った動作は、最初は更新が機能し、その後、質問の認証エラーで失敗し始めるというものです。プラグインを無効にすると、すべてが正常に機能し始めました。

于 2012-08-21T03:03:51.540 に答える