2016-10-11 8 views
1

私が取り組んできたWeb APIで次の問題が発生しました。私の問題は、IIS(Windows Server 2012 R2)で動作するようにWeb APIを構成する方法このドキュメントのdirectionsに従っており、私はまだこのページを表示できません。ブラウザエラー:ASPコアAPIをホストするIIS

WindowsサーバーはAzureでホストされています。

私はこの部分をIIS認証に関連させて追加しました(これは私の問題を引き起こさないかもしれないと思っていました)、それを追加/削除すると何の効果もありません。

dotnet publish 

これは、次のフォルダ構造

  • レフリー
  • ランタイム
  • を引き起こした:私は、次のように進行してきた私の publishフォルダを作成したかのように

    public void ConfigureServices(IServiceCollection services) 
        { 
         // Add framework services. 
         services.AddOptions(); 
    
         services.Configure<IISOptions>(options => 
         { 
          options.ForwardWindowsAuthentication = false; 
         }); 
        } 
    

  • 多くの.dllファイル(aspnetcなどのさまざまなアセンブリへの参照ore.mvc、HTTPClientの、など)
  • のweb.config
  • mywebAPI.deps(依存関係JSONファイル)
  • mywebAPI.dll
  • mywebAPI.pdb
  • appsettings.JSON

directory structureによると、私はそれらが暗黙のうちに私のproject.jsonに記載されているのでwwwrootとViewsが見逃していますが、私はウェブアプリケーションではなくWeb APIを持っているので、それらは必要ありません。 IIS 上

"publishOptions": { 
    "include": [ 
     "wwwroot", 
     "Views", 
     "Areas/**/Views", 
     "appsettings.json", 
     "web.config" 
    ] 
    } 

の設定手順は、私が公開した結果を配置したメインドライブ上のフォルダを作成しました。 は、IISマネージャに行って、新しいウェブサイト を追加したアプリケーションプールに行って、アプリを起動

enter image description here

右このブラウザエラーに私を投げる「NOマネージコード」をするために、.NET CLRのバージョンを設定していない - このページを

CMD dotnetから実行するmywebapi.dll WORKS ...と私はPostman(Windows Serverで郵便配達員を持っています)とテストしました。

enter image description here

+0

FREBをオンにしてログを調べます。 https://blogs.msdn.microsoft.com/docast/2016/04/28/troubleshooting-iis-request-performance-slowness-issues-using-freb-tracing/ – blowdart

+0

web.configファイルの内容を投稿できますか?おそらく、IISの設定に問題がある可能性があります。 – Ignas

答えて

1

あなたはより多くの情報が必要。

アプリケーションログを有効にして、.\logs\stdoutにチェックします。

<system.webServer> 
    <handlers> 
     <add 
     name="aspNetCore" 
     path="*" 
     verb="*" 
     modules="AspNetCoreModule" 
     resourceType="Unspecified"/> 
    </handlers> 
    <aspNetCore 
     processPath=".\MyApp.exe" 
     arguments="%LAUNCHER_ARGS%" 
     stdoutLogEnabled="false"     <--- enable 
     stdoutLogFile=".\logs\stdout" />   <--- set path 
    </system.webServer> 
</configuration> 

IISログを(おそらく最初にそれらを有効にする必要はありません)を確認してください。イベントビューア> Windowsログ>アプリケーション。ドリルダウンするには、イベントレベルなどで現在のログをフィルタリングできます。

IIS Application Logs

+0

Hey、 私はlaunchSettings.jsonでこれを修正しました。このlaunchUrlを持っていました:http:// localhost:5000/../... IISで私は間違ったホスト名を選択しました(localhostの代わりに、私は何かのカスタムを書いていた) 明らかに、launchSettings.jsonに書かれている(OBVIOUS ...)は、IISでホスト名バインディングとして選択されている... 私は更新/応答をできるだけ早く投稿します。 – ExtremeSwat

関連する問題