2016-09-28 25 views
5

Tôi đang cố gắng xuất bản lên IIS một .NET Core ASP.NET Website tôi đã nâng cấp từ RC2 tới RTM..NET Core xuất bản lên IIS - Lỗi HTTP 502.3 - Cổng Xấu - Ứng dụng CGI được chỉ định gặp lỗi và máy chủ chấm dứt quá trình

Là một kiểm tra sanity, tôi đã thành công có thể xuất bản mẫu/mẫu "Ứng dụng ASP.NET Lõi Web (.NET Framework)" ứng dụng từ Visual Studio 2015.

Nhưng đối với một số lý do, khi xuất bản Ứng dụng nâng cấp RTM, tôi nhận được Lỗi HTTP 502.3 - Cổng lỗi Ứng dụng CGI được chỉ định gặp phải lỗi và máy chủ đã chấm dứt quá trình.

Trang web KHÔNG hoạt động chạy IIS Express từ Visual Studio.

Tôi làm cách nào để gỡ lỗi này? Ai có ý tưởng gì không?

Error 502.3

web.config

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 

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

project.json

{ 
    "buildOptions": { 
    "emitEntryPoint": true, 
    "preserveCompilationContext": true, 
    "warningsAsErrors": true 
}, 
"dependencies": { 
    "Microsoft.AspNetCore.Diagnostics.Elm": "0.1.0", 
    "Microsoft.AspNetCore.Authentication.Cookies": "1.0.0", 
    "Microsoft.AspNetCore.Authorization": "1.0.0", 
    "Microsoft.AspNetCore.Diagnostics": "1.0.0", 
    "Microsoft.AspNetCore.Hosting": "1.0.0", 
    "Microsoft.AspNetCore.Hosting.Abstractions": "1.0.0", 
    "Microsoft.AspNetCore.Http.Extensions": "1.0.0", 
    "Microsoft.AspNetCore.Localization": "1.0.0", 
    "Microsoft.AspNetCore.Mvc": "1.0.0", 
    "Microsoft.AspNetCore.Routing": "1.0.0", 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0", 
    "Microsoft.AspNetCore.Session": "1.0.0", 
    "Microsoft.AspNetCore.StaticFiles": "1.0.0", 
    "Microsoft.Extensions.Caching.SqlServer": "1.0.0", 
    "Microsoft.Extensions.Logging.Console": "1.0.0", 
    "Microsoft.Extensions.Logging.Debug": "1.0.0", 
    "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0", 

    "Microsoft.AspNetCore.Razor.Tools": { 
    "version": "1.0.0-preview2-final", 
    "type": "build" 
    }, 

    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0", 
    "Microsoft.Extensions.Configuration.Json": "1.0.0", 
    "Microsoft.Extensions.Logging": "1.0.0", 
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0" 
}, 

"frameworks": { 
    "net461": {} 
}, 

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

"scripts": { 
    "prepublish": [ "bower install", "dotnet bundle" ], 
    "postpublish": "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" 
}, 

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

Trả lời

5

Tôi làm cách nào để gỡ lỗi này? Ai có ý tưởng gì không?

Dưới đây là ba ý tưởng:

  1. Read this và chắc chắn rằng bạn đã bao gồm tất cả những gì nó nói.

  2. Chạy số xuất bản .\MyApp.exe từ dòng lệnh. Điều đó có hiệu quả không?

    • Nếu có, bạn biết mình gặp sự cố tích hợp IIS.
    • Nếu không, bạn biết bạn gặp sự cố ứng dụng.
  3. Thay đổi stdoutLogEnabled="false" thành true và sau đó kiểm tra nhật ký tại stdoutLogFile=".\logs\stdout". (Các) lỗi có thể cho bạn biết điều gì đó.

  4. Kiểm tra nhật ký Ứng dụng IIS của bạn trong Trình xem sự kiện. (Các) lỗi có thể cho bạn biết điều gì đó.

Event Viewer Application Logs

Event Viewer Application Logs

+1

cảm ơn rất nhiều! Tôi đã có thể nhận được các tập tin đăng nhập và nó quay ra môi trường lưu trữ của ứng dụng được thiết lập để sản xuất và nó đã thất bại trên đăng nhập vào máy chủ sql sản xuất. Câu hỏi nhanh: cách bạn cho biết ứng dụng được triển khai nên sử dụng môi trường nào? –

+0

@ johnluke-laue Đặt biến môi trường. Xem http://stackoverflow.com/questions/28258227/how-to-set-ihostingenvironment-environmentname-in-vnext-application/30314719#30314719 –

+0

Tôi tạo thư mục. \ Logs, nhưng các tệp nhật ký trống, tôi không không biết tại sao. – mejiamanuel57

1

Những Tư Tưởng không làm việc cho tôi, nhưng: đi đến chế độ nhà phát triển web (nhấn F12) => ứng dụng tab => sau đó loại bỏ tất cả các tập tin cookie. trang làm mới và bạn không thể tin được. nó hoạt động độc đáo. bạn cũng có thể sao chép URL của mình và dán vào một trình duyệt khác trước khi bạn không chạy bất kỳ dự án MVC nào. dự án của tôi hoạt động trên Internet Explorer và Microsoft Edge mà không có bất kỳ thay đổi nào. có thể là nguyên nhân gây ra lỗi.

1

Nếu bạn chạy tác vụ trong một thời gian dài và trình duyệt web không nhận được phản hồi trong 2 phút (thời gian yêu cầu mặc định), bạn sẽ nhận được lỗi này. Bởi vì sau khi hết thời gian chờ, IIS sẽ thay thế ứng dụng để đáp ứng với máy khách bằng 'Bad Gateway'.

Có thể bạn nên thay đổi thời gian yêu cầu trong web.config.

Set requestTimeout thuộc tính trong phần system.webServer/aspNetCore để xác định khoảng thời gian mà các module Lõi ASP.NET sẽ chờ đợi một phản ứng từ quá trình lắng nghe trên% ASPNETCORE_PORT%.

  • Các requestTimeout phải được xác định trong chỉ toàn phút, nếu không nó mặc định là 2 phút.

Chỉ cần như thế này:

<system.webServer> 
    <aspNetCore requestTimeout="00:20:00" ... /> 
</system.webServer> 
Các vấn đề liên quan