web-dev-qa-db-ja.com

Asp.Net Core Web APIアプリ:リスニングアドレスを変更する方法

シンプルなAsp.Net Core WebAPI 2.0アプリケーションを作成しました。これは私のローカルマシンで動作します。しかし、私はそれをサーバーにデプロイしたいと思います。だから、私はそれをします。

私のシステム:

Ubuntu 16.04.
Asp.Net WebAPI 2.0 (and dotnet version 2.1.105)

しかし、アプリを起動すると次のように書きます:

Now listening on:http://localhost:53115

それから値を取得しようとすると:

  http://id_address:53115/api/values

そして、私は応答を得ることができません。郵便配達で:

 Could not get any response
 There was an error connecting to 
 http://id_address:53115/api/values.
 Why this might have happened:
 The server couldn't send a response:
 Ensure that the backend is working properly
 Self-signed SSL certificates are being blocked:
 Fix this by turning off 'SSL certificate verification' in Settings > General
 Proxy configured incorrectly
 Ensure that proxy is configured correctly in Settings > Proxy
 Request timeout:
 Change request timeout in Settings > General

私は何をすべきですか?それを修正する方法を教えていただけますか?

どこから探したらいいのかわかりません。

ありがとうございました!

9
Admiral Land

私は.NETCore 2.1 prevを使用しているので、自分でテストすることはできませんでしたが、それを信じている場合は https://www.billbogaiv.com/posts/setting-aspnet-Host-address-in -net-core-2.UseUrls(urls: "http://*:5000")を追加すると、Kestrelはlocalhostだけでなくポート5000をリッスンするように指示される可能性があるため、リモートサーバーでも機能するはずです。

その他の可能な解決策、UseKestrel(..)https://docs.Microsoft.com/en-us/aspnet/core/fundamentals/servers/kestrel?view=aspnetcore-2.1&tabs=aspnetcore2xLoopbackの代わりにIPAddress.Anyを使用します。

7
Daboul

これは Server urls ホスト構成によって構成されます

サーバーがリクエストをリッスンする必要があるポートとプロトコルのIPアドレスまたはホストアドレスを示します。
Key:URL
タイプ:文字列
デフォルトhttp:// localhost:50
Set using:UseUrls
環境変数:ASPNETCORE_URLS

サーバーが応答する必要があるURLプレフィックスのセミコロン区切り(;)リストに設定します。


コマンドライン引数を使用してURLを設定することも可能です。例えば:

dotnet run --urls = http://0.0.0.0:5001

ただし、ASP.NET Coreの古いバージョンの場合、これはそのままでは機能しません( この修正が使用されたバージョンに適用されたかどうかによって異なります ).

.UseConfigurationメソッドを介して常にホスト設定を直接設定できるという事実に基づいた、古いバージョンの回避策:

var config = new ConfigurationBuilder().AddCommandLine(args).Build();

return WebHost.CreateDefaultBuilder(args)
        .UseConfiguration(config)

同じ考え方を使用して、たとえば 構成ファイル などの他の構成ソースから設定値を読み取ることができます。

7
Set