4

ClickOnce アプリケーションの展開をテストしています。自分のマシン (IIS を実行) に仮想ディレクトリをセットアップしました。Visual Studio の [発行] タブで、インストール フォルダーの URL としてhttp://localhost/SampleApplicationを指定しました。ただし、アプリケーションを公開すると、次のエラーが発生します。

警告: http://chrish/SampleApplication/からファイルをダウンロードできませんでした。

リモート サーバーがエラーを返しました: (407) プロキシ認証が必要です。公開成功。

警告: http://chrish/SampleApplication/publish.htmで公開アプリケーションを表示できません。 http://chrish/SampleApplication/publish.htm

URL が Localhost からログイン名に変更されたことに注目してください。なんで?これは 1 週間前には起こりませんでした。

4

2 に答える 2

6

ClickOnce インストールでは、サーバー名が予想される名前と一致することを確認します。したがって、localhost は常に内部でコンピューター名に変換されます [質問で提案したユーザー名ではありません] (ClickOnce が行う多くの紛らわしいことの 1 つ - これの副作用の 1 つは、3 つのダウンロード サーバーをセットアップする場合、 3 つの個別のパブリッシュを実行するか、パブリッシュをこのようにスクリプト化する必要があります) またはこのようにします。したがって、これは驚くべきことではありません。常に裏でそれを行っています。

407 エラーはプロキシ認証に関連しています。これは、ダウンロードが Microsoft ISA Server などのプロキシ経由で転送されていることを意味します。IE Internet Options Connections Proxy Settings を調べて、[などchrish] のローカル アドレスがバイパスされていることを確認してください。

成功を報告している理由は、アップロードが検証とは別のメカニズムを使用している可能性が高く、プロキシ経由でルーティングされていないか、プロキシによってブロックされていないためです。(根本的な問題は、.NET フレームワークがデフォルトでプロキシ資格情報を渡さないことであり、devenv の構成エントリを適用するか、発行するものは何でも、ビルド プロセスで、送信する追加のコードを含むテスト ステップを呼び出す必要があります。プロキシ資格情報]( http://blogs.msdn.com/jpsanders/archive/2009/03/24/httpwebrequest-webexcepton-the-remote-server-returned-an-error-407-proxy-authentication-required.aspxデフォルトの資格情報を使用するようにデフォルトのプロキシを設定するにはどうすればよいですか?も参照してください) 。

于 2010-02-08T17:47:19.573 に答える