IISExpress - Failed to register URL "..." for site "..." application "/". Error description: Cannot create a file when that file already exists. (0x800700b7)
applicationhost.config 파일에서 bindingInformation을 다음과 같이 포트를 바꿨더니,
<site name="TestWebSite" id="59">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\temp\TestWebSite" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:18092:" />
</bindings>
</site>
이후 다음과 같은 오류가 발생합니다.
Failed to register URL "http://*:18092/" for site "TestWebSite" application "/". Error description: Cannot create a file when that file already exists. (0x800700b7)
위의 내용으로는 왠지 18092 포트가 이미 사용 중이라는 의미 같은데요, 일단은 현재 실행 중인 다른 프로세스에는 없습니다.
C:\Windows\System32> netstat -ano | findstr 18092
대신, 별도로 팝업 창으로 뜨는 IIS Express 알림에서 보다 더 자세한 오류를 알려주는데요,
Port '18092' is reserved by URL ': https://:18092/'.
그러니까, "https"로 이미 점유돼 있다는 것입니다. 이 사실은
netsh 명령어로 확인할 수 있으니,
C:\Windows\System32> netsh http show urlacl | findstr 18092
Reserved URL : https://*:18092/
저걸 지워 http 바인딩으로 다시 등록하든가,
// 삭제 후,
netsh http delete urlacl ur=https://*:18092/
// http로 재등록
netsh http add urlacl url=http://*:18092/ user=testusr
아니면 다른 포트를 사용하시면 됩니다. ^^
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]