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

비밀번호

댓글 작성자
 




... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
12662정성태6/8/20218282.NET Framework: 1064. C# COM 개체를 PIA(Primary Interop Assembly)로써 "Embed Interop Types" 참조하는 방법파일 다운로드1
12661정성태6/4/202118984.NET Framework: 1063. C# - MQTT를 이용한 클라이언트/서버(Broker) 통신 예제 [4]파일 다운로드1
12660정성태6/3/202110115.NET Framework: 1062. Windows Forms - 폼 내에서 발생하는 마우스 이벤트를 자식 컨트롤 영역에 상관없이 수신하는 방법 [1]파일 다운로드1
12659정성태6/2/202111351Linux: 40. 우분투 설치 후 MBR 디스크 드라이브 여유 공간이 인식되지 않은 경우 - Logical Volume Management
12658정성태6/2/20218777Windows: 194. Microsoft Store에 있는 구글의 공식 Youtube App
12657정성태6/2/202110050Windows: 193. 윈도우 패키지 관리자 - winget 설치
12656정성태6/1/20218297.NET Framework: 1061. 서버 유형의 COM+에 적용할 수 없는 Server GC
12655정성태6/1/20217775오류 유형: 722. windbg/sos - savemodule - Fail to read memory
12654정성태5/31/20217797오류 유형: 721. Hyper-V - Saved 상태의 VM을 시작 시 오류 발생
12653정성태5/31/202110488.NET Framework: 1060. 닷넷 GC에 새롭게 구현되는 DPAD(Dynamic Promotion And Demotion for GC)
12652정성태5/31/20218597VS.NET IDE: 164. Visual Studio - Web Deploy로 Publish 시 암호창이 매번 뜨는 문제
12651정성태5/31/20218851오류 유형: 720. PostgreSQL - ERROR: 22P02: malformed array literal: "..."
12650정성태5/17/20218157기타: 82. OpenTabletDriver의 버튼에 더블 클릭을 매핑 및 게임에서의 지원 방법
12649정성태5/16/20219477.NET Framework: 1059. 세대 별 GC(Garbage Collection) 방식에서 Card table의 사용 의미 [1]
12648정성태5/16/20218133사물인터넷: 66. PC -> FTDI -> NodeMCU v1 ESP8266 기기를 UART 핀을 연결해 직렬 통신하는 방법파일 다운로드1
12647정성태5/15/20219388.NET Framework: 1058. C# - C++과의 연동을 위한 구조체의 fixed 배열 필드 사용파일 다운로드1
12646정성태5/15/20218531사물인터넷: 65. C# - Arduino IDE의 Serial Monitor 기능 구현파일 다운로드1
12645정성태5/14/20218209사물인터넷: 64. NodeMCU v1 ESP8266 - LittleFS를 이용한 와이파이 접속 정보 업데이트파일 다운로드1
12644정성태5/14/20219366오류 유형: 719. 윈도우 - 제어판의 "프로그램 및 기능" / "Windows 기능 켜기/끄기" 오류 0x800736B3
12643정성태5/14/20218549오류 유형: 718. 서버 유형의 COM+ 사용 시 0x80080005(Server execution failed) 오류 발생
12642정성태5/14/20219479오류 유형: 717. The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
12641정성태5/13/20219181디버깅 기술: 179. 윈도우용 .NET Core 3 이상에서 Windbg의 sos 사용법
12640정성태5/13/202112115오류 유형: 716. RDP 연결 - Because of a protocol error (code: 0x112f), the remote session will be disconnected. [1]
12639정성태5/12/20219012오류 유형: 715. Arduino: Open Serial Monitor - The module '...\detection.node' was compiled against a different Node.js version using NODE_MODULE_VERSION
12638정성태5/12/20219918사물인터넷: 63. NodeMCU v1 ESP8266 - 펌웨어 내 파일 시스템(SPIFFS, LittleFS) 및 EEPROM 활용
12637정성태5/10/20219503사물인터넷: 62. NodeMCU v1 ESP8266 보드의 A0 핀에 다중 아날로그 센서 연결 [1]
... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...