답변:
나에게 문제는 Visual Studio를 닫고 삭제하여 해결되었습니다.
project.lock.json
Visual Studio를 다시 시작합니다.
편집 : 나는 RC1을 사용하고 있었다.
project.lock.json
?
Microsoft는 릴리스 정보에 설명 된대로 호스팅 모델을 변경했습니다 .
에서 project.json
종속성을 대체
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7"
와
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8"
에서 web.config
의 handlers
부분은 제외한 모든 항목을 제거
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
완료 web.config
는 다음과 같습니다.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
</handlers>
<httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" stdoutLogEnabled="false" startupTimeLimit="3600"/>
</system.webServer>
</configuration>
RC1 : RC1을 사용하는 동안 솔루션 폴더를 이동 한 후 오류가 발생했습니다. bin
및 obj
폴더를 삭제 한 후 모든 것이 다시 작동했습니다.
user764754가 언급했듯이 단순히 Visual Studio를 다시 시작하는 것도 도움이 될 수 있습니다.
이 문제가있는 다른 사람들을 위해, 다른 솔루션이 작동하지 않는 경우-이 스레드에서 답을 찾았습니다. SSL을 사용하도록 강제 : 애플리케이션을 호스팅하는 DNX 프로세스의 프로세스 ID를 확인하는 동안 오류가 발생했습니다.
프로젝트에서 SSL을 사용하거나 강제로 실행하면 먼저 디버깅 (CTRL + F5)없이 실행하면 로컬 SSL 인증서를 생성하라는 메시지가 표시되고 그 후에 디버깅이 작동하고 오류가 사라집니다.
그만한 가치가 있는 것은 httpPlatformHandler가 주어진 실행 파일 (이 경우 dnx)을 실행할 수없는 여러 문제에 대해 붉은 청어 역할을 할 수 있는 일반적인 오류 메시지 입니다.
제 경우에는 launchSettings.json 파일을 오해 한 직접적인 결과로이 오류를 받았습니다. 내 응용 프로그램에 대해 https 끝점을 활성화하려고 시도했지만 실수로 내 applicationUrl에서 sslport를 복제했습니다. 내가 이해했듯이 applicationUrl은 응용 프로그램의 http 호스트 이름 / 포트 여야하며 sslPort를 입력하여 sslPort에 제공된 포트의 applicationUrl에 제공된 호스트 이름에서 https를 수신하도록 IIS Express 환경을 구성합니다.
예를 들면 :
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:44000",
"sslPort": 44300
}
}
localhost에서 다음 두 끝점을 제공합니다.
applicationUrl 및 sslPort 설정에 동일한 포트가있는 경우이 스레드와 관련된 오류가 수신됩니다.
이것은 RC1 에서 나에게 사실입니다.
업그레이드가 가능합니다 . 여기 에서 새로 업데이트 된 템플릿을 살펴 봐야 했습니다 .
wwwroot에서 web.config를 업데이트하여 다음을 포함하십시오.
<httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" stdoutLogEnabled="false" startupTimeLimit="3600"/>
또한 project.json을 수정 하여 Kestrel 을 사용하여 프로젝트가 디버그하는 방식을 변경해야합니다 .
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel"
},
"dependencies": {
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
}
및 hosting.ini 수정
server=Microsoft.AspNet.Server.Kestrel
이를 startup.cs의 Configure 메서드에 추가합니다.
// Add the platform handler to the request pipeline.
app.UseIISPlatformHandler();
이러한 참조를 추가하면 프로젝트를 실행할 수 있습니다.
http 대신 https : // localhost 를 시작하려는 프로젝트 구성으로 인해이 문제가 발생했습니다 . "디버그"아래에서 웹 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "앱 URL"을 https 대신 http로 조정합니다.
이 문제를 해결하는 또 다른 방법은 실행기를 "IIS Express"에서 "웹"으로 전환하는 것입니다.
이 튜토리얼을 따르는 동안 비슷한 오류가 발생했습니다.
먼저 "dotnet.exe의 프로세스 ID를 확인하는 동안 오류가 발생했습니다 ..."라는 오류가 발생했습니다. 다음 단계를 수행했습니다.
이 오류를 해결하기 위해 몇 가지 작업을 시도하는 동안이 오류도 발생했습니다. "응용 프로그램을 호스팅하는 DNX 프로세스의 프로세스 ID를 확인하는 동안 오류가 발생했습니다."
응용 프로그램의 다른 인스턴스가 실행되어 발생했습니다.
이 답변이 누군가에게 도움이 되었기를 바랍니다.
제 경우에는 asp net core 1.1, .net framework 4.5.2 프로젝트에서 오류가 더 이상 dnx를 참조하지 않았습니다. 대신 프로젝트 이름 exe를 참조했습니다. 오류의 또 다른 버전은 단순히 iis express에 연결할 수 없다는 것을 나타냅니다.
문제는 모든 연결이 www로 시작하는 호스트 이름을 갖도록 강제 하는 표준 호스트 이름 다시 쓰기 규칙 의 도입이었습니다 . 예를 들어 gty.org를 www.gty.org로 리디렉션하여 SSL 인증서를 준수합니다. 프로덕션에서는 괜찮지 만 https : // localhost : 44347 / 을 www로 시작하고 iis express가 처리 할 수 있다고 기대할 수는 없습니다.
<rule name="CanonicalHostNameAddwww" enabled="true" stopProcessing="true">
<match url="(.*)" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" negate="true" pattern="^www\." />
</conditions>
<action type="Redirect" url="http://www.{HTTP_HOST}{HTTP_URL}" appendQueryString="false" redirectType="Permanent" />
</rule>
해결책은 Visual Studio에서 실행할 때 규칙을 주석 처리하거나 조건을 추가하는 것입니다.
<add input="{HTTP_HOST}" negate="true" pattern="^localhost" />
설치에 따라 SSL이 활성화 된 IIS Express를 실행하고 있다고 가정하면 IIS Express 개발 인증서 ( "localhost"로 발급 / "localhost"로 발급)를 [Local Computer \ Personal \ Certificates] 또는 [Local Computer]에 넣어야합니다. \ Trusted Root Certification \ Certificates]. 그중 하나가 작동합니다. (Windows 10 + VS2015 사용). HTH
web.config 파일에서 잘못된 항목을 확인하십시오. 예를 들어 "entityFramework"태그가 있으면이 문제가 발생합니다.
beta7-> beta8에서 업그레이드 할 때이 문제가 발생했으며 Ben M과 Domysee가 제공 한 제안이 도움이되었습니다. 그러나 동료 중 한 명이 목표로하는 프로젝트를 실행하는 데 여전히 문제가있었습니다 dnxcore50
. 다음 명령을 실행했는지 확인하는 경우 :
dnvm install 1.0.0-beta8 -r coreclr
dnvm install 1.0.0-beta8 -r coreclr -arch x86
특히 그의 기계에서 그것을 고친 것은 두 번째 명령이었습니다. 이 폴더에 다음이 있는지 다시 확인할 수도 dnx.exe
있습니다.
%userprofile%\.dnx\runtimes\dnx-coreclr-win-x86.1.0.0-beta8\bin
이 오류를 일으킬 수있는 것들이 너무 많습니다. 다음은 나를 위해 일한 몇 가지입니다.
web.config
에서를 삭제하십시오 wwwroot
. 컴파일시 올바르게 다시 생성됩니다.SSL
당신에 IIS Express
당신의 이동 SSL Cert
받는 Trusted Root Certification Authorities
폴더 작동하지 않았다. 실행하려는 프로젝트 의 Debug
탭에서 Properties
. unclicking 시도 Enable SSL
를 가능하게하고 다른 포트를 얻기 위해 다시 클릭 한 후 확인란을 선택합니다. 이 작업을 몇 번해야 할 수도 있습니다.