【问题标题】:asp.net core out-of-process fails to start correctlyasp.net core out-of-process 无法正确启动
【发布时间】:2019-07-27 01:12:19
【问题描述】:

我正在尝试使用 Azure 网站的 RunFromPackage 应用程序设置。

我正在使用以下堆栈

asp.net 核心(进程外) 针对 .Net Framework 4.7.2

我无法再让我的 Web 应用程序正常运行。当我点击网址时,我得到的只是

“由于发生内部服务器错误,页面无法显示。”

在响应中。

我已经使用 Kudu powershell 窗口和命令启动了我的应用程序

".{applicationName}.exe"

它启动良好。没有错误或任何东西

查看事件查看器日志我看到的只是

APPLICATION_MANAGER::~APPLICATION_MANAGER |这=000001D1CD999A60 [TID 8872] [PID 8028]

打开失败的请求跟踪日志时,我看到以下相关信息

  1. URL_CACHE_ACCESS_START RequestURL="/favicon.ico" 15:37:30.729
  2. URL_CACHE_ACCESS_END PhysicalPath="", URLInfoFromCache="false", URLInfoAddedToCache="true", ErrorCode="操作成功完成。 (0x0)" 15:37:30.729
  3. GENERAL_GET_URL_METADATA PhysicalPath="", AccessPerms="545" 15:37:30.729
  4. HANDLER_CHANGED OldHandlerName="", NewHandlerName="aspNetCore", NewHandlerModules="AspNetCoreModule", NewHandlerScriptProcessor="", NewHandlerType="" 15:37:30.729
  5. MODULE_SET_RESPONSE_ERROR_STATUS

Warning ModuleName="IIS Web Core", Notification="BEGIN_REQUEST", HttpStatus="500", HttpReason="Internal Server Error", HttpSubStatus="0", ErrorCode="拒绝访问。 (0x80070005)", ConfigExceptionInfo=""

我已尝试打开 asp.net 核心模块日志记录,但没有收到任何日志文件。我也尝试打开 stdoutlog,但似乎没有任何记录。

这是我的 web.config 的副本

<configuration>
  <system.webServer>
    <security>
      <access sslFlags="SslNegotiateCert" />
    </security>
    <serverRuntime uploadReadAheadSize="30000000" />
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="%LAUNCHER_PATH%" stdoutLogEnabled="true" stdoutLogFile="\\?\%home%\LogFiles\stdout" hostingModel="OutOfProcess" arguments="%LAUNCHER_ARGS%">
     <handlerSettings>
    <handlerSetting name="debugFile" value="\\?\%home%\LogFiles\aspnetcore-debug.log" />
    <handlerSetting name="debugLevel" value="FILE,TRACE" />
  </handlerSettings>
    </aspNetCore>
  </system.webServer>
</configuration>

我不太确定发生了什么。我只能收集到 IIS 模块出了点问题。从错误消息看来,它无法读取或处理我的 web.config ErrorCode="Access is denied."

奇怪的是,我之前构建的应用程序已启动并运行。我试图隔离可能破坏网站的更改,但我似乎无法找出导致此问题的原因。

【问题讨论】:

    标签: asp.net-core azure-web-app-service .net-framework-version out-of-process ssl-client-authentication


    【解决方案1】:

    这似乎是因为我试图在一个端点上仅获得客户端身份验证。

    以下设置

          <access sslFlags="SslNegotiateCert" />
    

    在 web.config 中,并且在应用程序设置中需要传入证书导致了我的问题。

    然后我尝试了“证书排除路径”的功能,但是拥有这个和 web.config 访问节点会使 Web 服务器非常不安并导致错误消息

    “由于发生内部服务器错误,页面无法显示。”

    我必须从我的 web.config 文件中删除该节点,保留所需的 SSL,并设置我的证书排除路径,然后一切都恢复在线。

    【讨论】:

      猜你喜欢
      • 2019-02-22
      • 2020-04-10
      • 2014-09-28
      • 1970-01-01
      • 2019-03-24
      • 2019-12-14
      • 2019-08-30
      • 2019-01-09
      • 2017-11-22
      相关资源
      最近更新 更多