簡體   English   中英

ASP.NET Core 1.1在發布時無法運行

[英]ASP.NET Core 1.1 fails to run when published

我有一個ASP.NET核心應用程序,我剛剛升級到1.1。 此應用程序以前工作正常,我可以發布它(通過Visual Studio中的發布命令),它在IIS下工作正常。 我最近將此更改為1.1並使應用程序在調試模式下運行正常。 現在,當我發布它時,我得到了

502 - Web server received an invalid response while acting as a gateway or proxy server.

我打開了失敗請求跟蹤規則,在那里我看到以下內容

MODULE_SET_RESPONSE_ERROR_STATUS 

ModuleName httpPlatformHandler 
Notification EXECUTE_REQUEST_HANDLER 
HttpStatus 502 
HttpReason Bad Gateway 
HttpSubStatus 3 
ErrorCode The server is currently disabled. (0x8007053d) 

我發布的web.config文件如下所示

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

我的project.json文件看起來像這樣

{
  "dependencies": {
    "Microsoft.EntityFrameworkCore.Tools": "1.1.0-preview4-final",
    "Microsoft.EntityFrameworkCore": "1.1.0",
    "Microsoft.EntityFrameworkCore.InMemory": "1.1.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",

    "Microsoft.AspNetCore.Diagnostics": "1.1.0",
    "Microsoft.AspNetCore.Mvc": "1.1.0",
    "Microsoft.AspNetCore.Mvc.TagHelpers": "1.1.0",
    "Microsoft.AspNetCore.StaticFiles": "1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",

    "Microsoft.Extensions.Caching.Memory": "1.1.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",

    "Syncfusion.Compression.MVC": "14.2600.0.32-preview2-final",
    "Syncfusion.XlsIO.MVC": "14.2600.0.32-preview2-final",

    "Microsoft.ApplicationInsights.AspNetCore": "1.0.2",

    "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
    "Microsoft.Extensions.Configuration.Json": "1.1.0",
    "Microsoft.Extensions.Logging.Console": "1.1.0",
    "Microsoft.Extensions.Logging.Debug": "1.1.0",

    "Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    },

    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.1.0"
  },

  "tools": {
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
  },

  "frameworks": {
    "netcoreapp1.1": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
    //"net461": {
    //  "dependencies": {
    //  },
    //  "imports": "dnxcore50"
    //}
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "web.config",
      "appsettings.Production.json",
      "appsettings.Staging.json",
      "appsettings.json"
    ]
  },

  "scripts": {
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  }
}

我無法找出配置或IIS的問題。

編輯:我對配置進行了一些更改,現在已超過模塊加載部分(至少根據跟蹤日志)。 現在我每次訪問網站時都會得到404。 我可以毫無問題地查看靜態圖像,但當我查看主頁到網站時,我收到404錯誤

ModuleName AspNetCoreModule 
Notification EXECUTE_REQUEST_HANDLER 
HttpStatus 404 
HttpReason Not Found 
HttpSubStatus 0 
ErrorCode The operation completed successfully. (0x0) 

我發布的目錄結構是IIS(/ Cranalytics)中根網站下的子站點。 然后在該文件夾中是所有各種DLL,以及web.config。 在此目錄下是項目的wwwroot目錄。 IIS子網站設置為指向根站點(/ Cranalytics)。

一些幫助的想法。

1.Check Directory Browsing of your website if it is in enable state or not.
2.Try to separate your project to a new website with different port.
-also configure the newly created web site of course.
3.framework in application pool vs project, it must be the same.

問題是這個站點正在從RC1更新到1.1。 要讓RC1工作,我需要撤消一些事情。 在我創建網站的IIS中,我已經改變了從子網站Cranalytics的根到其下面的wwwroot的路徑。 這必須撤消。

然后在配置我需要這樣的東西,因為它是一個子網站。 這也必須刪除。

        //if (env.IsDevelopment())
        //{
        //    Configure1(app, env, loggerFactory, context);
        //}
        //else
        //{
        //    app.Map("/Cranalytics", app1 => Configure1(app1, env, loggerFactory, context));
        //}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM