2015-11-11 21 views
14

私はazureでasp.net 5アプリケーションをホストしています。コードはbeta8に準拠しています。アプリケーションはローカル環境で正常に動作し、紺碧のサイト。 「指定されたCGIアプリケーションでエラーが発生し、サーバーがプロセスを終了しました。」という一般的なエラーが表示されます。指定したCGIアプリケーションでエラーが発生し、サーバーがプロセスを終了しました

答えて

6

私はこの問題を、wwwrootのweb.configファイルからforwardWindowsAuthTokenを削除することで解決できました。

  1. 移動オープン
  2. のsrc /プロジェクト名/ wwwrootのにweb.configファイル
  3. httpPlatformforwardWindowsAuthToken="true/false"プロパティを削除

で再配備と私はうまく働きました。

は私たちのために、ここでの議論https://github.com/aspnet/Hosting/issues/364

5

短い答え

たくさんのためを参照してください。修正がWebHostBuilderUseIISIntegration()にすることでした。

public static void Main(string[] args) 
{ 
    var host = new WebHostBuilder() 
     .UseContentRoot(Directory.GetCurrentDirectory()) 
     .UseKestrel() 
     .UseIISIntegration() // Necessary for Azure. 
     .UseStartup<Program>() 
     .Build(); 

    host.Run(); 
} 

詳細

当社web.configファイルは次のようになります。

{ 
    "dependencies": { 
    "Microsoft.NETCore.App": { 
     "version": "1.0.0", 
     "type": "platform" 
    }, 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0-*", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0-*" 
    }, 
    "tools": { 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final" 
    }, 
    "frameworks": { 
    "netcoreapp1.0": {} 
    }, 
    "buildOptions": { 
    "emitEntryPoint": true 
    }, 
    "publishOptions": { 
    "include": [ 
     "web.config" 
    ] 
    }, 
    "scripts": { 
    "postpublish": [ 
     "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" 
    ] 
    } 
} 

当社NUG:

<?xml version="1.0" encoding="utf-8"?>   
<configuration>         
<system.webServer>        
    <handlers>         
    <add name="aspNetCore"      
     path="*"        
     verb="*"        
     modules="AspNetCoreModule"    
     resourceType="Unspecified"/>   
    </handlers>         
    <aspNetCore processPath="%LAUNCHER_PATH%" 
     arguments="%LAUNCHER_ARGS%"    
     stdoutLogEnabled="false"    
     stdoutLogFile=".\logs\stdout"   
     forwardWindowsAuthToken="false"/>  
</system.webServer>        
</configuration>  

当社project.jsonは次のようになりますet.configは次のようになります。

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <packageSources> 
    <add key="AspNetVNext" value="https://www.myget.org/F/aspnetcidev/api/v3/index.json" /> 
    <add key="NuGet" value="https://api.nuget.org/v3/index.json" /> 
    </packageSources> 
</configuration> 
+0

サーバの応答が遅すぎて低速で動作していたときに、localhostでも同じエラーが発生していましたが、「UseIISIntegration」を追加して動作しました。ありがとう –

2

私は、.NET 5.4.2を使用してASP.coreアプリを展開しながら、このエラーに遭遇しました。修正は、新しいアプリサービスインスタンスにデプロイすることでした。私の推測では、別のフレームワーク・バージョンを使用していた以前のデプロイメントからいくつかの迷惑メールが残っていたということでした。

+0

これは私のために働いた。しかし、新しいAppserviceを作り直すのではなく、既存の「汚い」FTPに接続して、wwwrootのすべてのコンテンツを削除し、アプリを再公開しました。 –

0

asp.netコアのバージョンがプレビューバージョンであるため、私はazureアプリケーションサービスでこの問題が発生しています。そのため、NuGetによってasp.netコアバージョンを2.0.1にアップデートし、アプリケーションを再デプロイします。

アプリが再び動作します。

関連する問題