Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

비주얼 스튜디오 - IIS Express로 호스팅하는 사이트를 https로 접근하는 방법

처음 ASP.NET 웹 사이트 프로젝트를 생성하면 무작위 포트가 할당되면서 IIS Express 상의 "localhost"로 테스트가 됩니다. 가령 비주얼 스튜디오에서 F5 키를 눌러 디버깅을 시작하면 "http://localhost:18547"로 웹 브라우저가 뜨는데요.

https로 테스트하기 위해서는, 간단하게 솔루션 탐색기에서 웹 애플리케이션 프로젝트를 선택하면 다음과 같이 "속성" 창에 SSL 설정을 할 수 있는 옵션이 보입니다.

iisexpress_ssl_enabled_1.png

보는 바와 같이 "SSL Enabled" 항목을 "True"로 설정하면 "SSL URL"이 제공됩니다. 그다음, 프로젝트 속성 창으로 이동해 다음과 같이 "Project Url"을 "SSL URL" 값으로 설정하면,

iisexpress_ssl_enabled_2.png

이후부터 F5 키를 눌러 디버깅을 시작하면 웹 브라우저에 "https://localhost:44369"로 뜨게 되고, 최초 접근 시에 비주얼 스튜디오가 "localhost" 용 테스트 인증서를 등록할 것인지를 묻는 창으로 SSL 통신에 사용될 인증서도 자동으로 생성하게 됩니다. (만약 기존에 localhost 인증서를 받은 적이 있다면 이 과정이 생략됩니다.)




참고로, SSL 설정 후 F5 키를 눌러 실행할 때 다음과 같은 오류 메시지가 발생한다면?

Unable to launch the IIS Express Web server.

The start URL specified is not valid. https://localhost:44369/

웹 애플리케이션 프로젝트(예를 들어 WebApplication1이라고 했을 때)가 속한 솔루션 파일이 있는 폴더를 기준으로 다음의 경로에 있는 파일을,

.vs\WebApplication1\config\applicationhost.config

메모장으로 열어 바인딩 정보를 확인합니다. 가령 제 경우에 다음과 같이 설정돼 있었습니다.

<site name="WebApplication1" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="C:\temp\WebApplication1\WebApplication1" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:18547:localhost" />
        <binding protocol="https" bindingInformation="*:44384:localhost" />
    </bindings>
</site>

비주얼 스튜디오의 경우 44369로 설정되었는데, applicationhost.config에는 44384로 다르기 때문에 발생한 문제입니다. 따라서, 비주얼 스튜디오에서 그냥 "Project Url"에 44384로 포트 값을 바꿔주면 문제가 해결됩니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 3/25/2019]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 136  137  138  [139]  140  141  142  143  144  145  146  147  148  149  150  ...
NoWriterDateCnt.TitleFile(s)
1580정성태1/12/201440322.NET Framework: 407. 닷넷 사용자 정의 예외 클래스의 최소 구현 코드 [1]
1579정성태1/12/201422314오류 유형: 207. System.ArgumentException was unhandled - Message=[net_WebHeaderInvalidControlChars]
1578정성태1/11/201433910개발 환경 구성: 209. Fiddler에서 WebSocket 통신을 모니터링하는 방법 [1]
1577정성태1/11/201424130오류 유형: 206. WriteFile Win32API 사용 시 비정상 종료 현상 [3]
1576정성태1/11/201442018Windows: 81. 긴 이름의 파일/폴더 삭제하는 법 [5]
1575정성태1/11/201422497오류 유형: 205. Exception calling "Provision" with "0" argument(s): "The timer job did not complete running within the allotted time."
1574정성태1/11/201424493오류 유형: 204. An unhandled exception ('System.Security.Cryptography.CryptographicException') occurred in OWSTIMER.EXE
1573정성태1/11/201422316오류 유형: 203. 이벤트 로그 에러 - MsiInstaller에서 Chart Controls 설치 관련 오류 발생
1572정성태1/9/201425785.NET Framework: 406. CoreLab - OraDirect .NET 사용법
1571정성태1/9/201421983.NET Framework: 405. override 메서드가 정의된 타입의 인스턴스로 base 메서드를 호출하는 방법 - 두 번째 이야기
1570정성태1/9/201425366Math: 11. C# 시뮬레이션 - 몬티홀 게임파일 다운로드1
1569정성태1/8/201422540Windows: 80. 윈도우 서버 백업의 복원하는 옵션 설명
1568정성태1/8/201423145오류 유형: 202. Hyper-V 서비스 시작 오류 - Not enough storage is available to complete this operation.
1567정성태1/8/201492493기타: 40. 오피스 2013 라이선스 리셋하는 방법 [5]
1566정성태1/7/201423431Windows: 79. 윈도우 8 - 스카이드라이브(skydrive)의 Online/Offline 동기화 방식 [1]
1565정성태1/3/201421914.NET Framework: 404. 리플렉션을 이용해 닷넷 LicenseManager를 우회할 수 있는 사례
1564정성태1/3/201422491.NET Framework: 403. override 메서드가 정의된 타입의 인스턴스로 base 메서드를 호출하는 방법파일 다운로드1
1563정성태1/3/201428231오류 유형: 201. ASP.NET 웹 사이트를 IIS 7 이상의 환경에서 호스팅할 때 500 오류 발생
1562정성태1/2/201432918.NET Framework: 402. 카카오톡 PC 버전 실행 시 개발자 컴퓨터에서 Themida 오류 나는 문제 - 두 번째 이야기
1561정성태1/1/201442448오류 유형: 200. 카카오톡 PC 버전 실행 시 개발자 컴퓨터에서 Themida 오류 나는 문제 [2]
1560정성태1/1/201421177오류 유형: 199. Hyper-V - Checkpoint 생성 오류
1559정성태12/30/201324464.NET Framework: 401. windbg에서 확인해 보는 관리 힙의 인스턴스 구조 [2]
1558정성태12/29/201333907.NET Framework: 400. 눈으로 확인하는 LayoutKind 옵션 효과 [2]파일 다운로드1
1557정성태12/27/201322986.NET Framework: 399. LayoutKind 옵션에 대해 [2]
1556정성태12/27/201343189개발 환경 구성: 208. IIS + Node.js 환경 구성 [8]
1555정성태12/27/201329945개발 환경 구성: 207. IIS의 80 포트를 공유하는 응용 프로그램 만드는 방법 [1]
... 136  137  138  [139]  140  141  142  143  144  145  146  147  148  149  150  ...