programing

ASP.Net Core 1.0 RC2 : web.config에서 RUCHER_PATH와 RUCHER_ARGS가 언급된 것은 무엇입니까?

lastmoon 2023. 8. 10. 19:07
반응형

ASP.Net Core 1.0 RC2 : web.config에서 RUCHER_PATH와 RUCHER_ARGS가 언급된 것은 무엇입니까?

ASP에 변경 사항이 있습니다.NET 5 RC2 릴리스:

  • ASP로 브랜드가 변경되었습니다.NET Core 1.0(ASP).NET 5가 작동하지 않음)
  • 잘가요.dnvm그리고.dnu명령줄이 다음으로 대체됩니다.dotnet
  • 필요한 다양한 코드 변경

생성된 파일을 배포하려고 합니다.dotnet publish파일 구조가 RC1과 다릅니다.이벤트 뷰어에 다음 오류가 표시됩니다.

Failed to start process with commandline '%LAUNCHER_PATH% %LAUNCHER_ARGS%', Error Code = '0x80070002'.

이러한 환경 변수는 다음에 설명되어 있습니다.web.config공식 rc1-to-rc2 문서에서 가져온 것입니다.

<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>

올바른 값은 무엇입니까?%LAUNCHER_PATH%그리고.%LAUNCHER_ARGS%이러한 값은 Github 게시 문서에 언급되지 않았습니다.

github IISample(감사합니다 @Pawel 및 Luke)에서 얻을 수 있는 가치 가능성은 다음과 같습니다.

<!-- This set of attributes are used for launching the sample using IISExpress via Visual Studio tooling -->
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>

<!-- This set of attributes are used for launching the sample for full CLR (net451) without Visual Studio tooling -->
<aspNetCore processPath=".\IISSample.exe" arguments="" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>

<!-- This set of attributes are used for launching the sample for Core CLR (netcoreapp1.0) without Visual Studio tooling -->
<aspNetCore processPath="dotnet" arguments=".\IISSample.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>

몇 시간 동안 이들을 처리한 후, 저는 우리가 처리해야 할 두 개의 web.config가 있다는 것을 알게 되었습니다.src\ProjectName\wwwroot\web.config그리고.src\ProjectName\web.config만약 당신이 후자를 가지고 있지 않다면, VS2015 게시는 당신을 위해 하나를 생성할 것입니다.%LAUNCHER_PATH%그리고.%LAUNCHER_ARGS%결석으로

VS2015에서 II Express를 통해 로컬로 프로젝트를 실행하고 디버깅할 수 있도록 하려면 web.config 모두 아래의 기본값을 가져야 합니다.RUNCHER_PATH 및 RUNCHER_ARGS를 다른 항목으로 바꾸면 VS2015가 무기한 중단됩니다.

<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>

그러나 IIS(WinServer 2012 R2에서 8.5 사용)에 배포할 때의 값src\ProjectName\web.config다음으로 대체해야 합니다.구성된 경우,dotnet publish-iis명령은 사용자를 대신하여 교체를 수행한다고 가정합니다(아래 참조).

<aspNetCore processPath="dotnet" arguments=".\ProjectName.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>

RC1에서 마이그레이션하는 경우 http 바인딩된 디렉토리도 wwwroot이 아닌 Project root 폴더로 변경합니다.예: 출처C:\inetpub\ProjectName\wwwroot로.C:\inetpub\ProjectName.

구성 방법 publish-iis자동 교체를 수행하려면 이 스니펫을 프로젝트에 추가하십시오.json: (감사합니다 @Pawel)

  "tools": {
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": {
      "version": "1.0.0-preview1-final"
    }
  },
  "scripts": {
    "postpublish": "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%"
  }

II 통합 도구 세그먼트는 이러한 시작 프로그램 변수를 적절한 배포 값으로 변환합니다.그렇지 않으면 다음 오류가 발생합니다.

No executable found matching command "dotnet-publish-iis"

RC2 Toolkit Preview 1을 사용하고 있습니다.

%LAUNCHER_PATH%그리고.%LAUNCHER_ARGS%VS에서 사용합니다. 응용 프로그램을 게시할 때 publish-iis 도구(구성된 경우)가 해당 도구를 재정의합니다.

VS:의 web.config에 포함되어 있습니다.

<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%"
    stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout"
    forwardWindowsAuthToken="false"/>

다음은 게시 후 서버에 표시됩니다.

<aspNetCore processPath="dotnet" arguments=".\AppName.dll" 
    stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" 
    forwardWindowsAuthToken="false" />

이 예에서는%LAUNCHER_PATH%로 대체됨dotnet,그리고.%LAUNCHER_ARGS%타고application name와 함께.dll연장

여러분, 도와주셔서 감사합니다.는 템플릿(https://github.com/MarkPieszak/aspnetcore-angular2-universal) 과 명령어를 사용하고 있었습니다.

dotnet publish

아래에 폴더를 만들었습니다.

bin/Debug/netcoreapp1.1/publish

이 경로를 사이트의 루트 디렉터리로 설정하면 작동합니다!

언급URL : https://stackoverflow.com/questions/37463186/asp-net-core-1-0-rc2-what-are-launcher-path-and-launcher-args-mentioned-in-web

반응형