IIS 웹서버에 SSL 웹서버 인증서를 적용한 경우, https:// 를 통해서 접속이 가능해 진다.
그런데, 실제적으로 https:// 로 직접링크를 걸지 않는 이상 웹사이트 전체를 거의 대부분 상대링크를 이용해서 웹사이트 디자인을 하게 되므로 중요 정보를 다루는 웹사이트는 무조건 SSL 채널 이용을 강제화 할 필요가 있다.
그런 경우, 위와 같이 해당 웹사이트 등록정보에서 SSL 강제화를 적용하면 된다. 그런데 문제는 기존에 https:// 가 아닌 http:// 접속자가 분명 있을 것이다.
물론, 해당 웹사이트의 인덱스 페이지에서, https://www.serverinfo.pe.kr/ 처럼 redirect 를 하면 되나, 이외 웹서버 측에 적용이 가능하다. 그러나 서브페이지까지 Redirect 처리를 해줄려면 웹서버 측 Redirect 설정이 훨씬 효과적 이다.
처음 이미지처럼, 오류메시지를 보여줄 필요없이 즉시 Redirect 처리를 해주는 방법이, IIS 웹서버의 기본 오류메시지 문서를 변경하는 방법이다.
SSL 강제로 SSL 페이지가 필요한 경우 웹서버는 403.4 오류 메시지를 클라이언트 브라우져에 출력하게 된다.
위 기본 페이지를 사용자 지정 페이지로 변경을 해주면 되며, 그 파일은 웹사이트별 디자인도 가능할 것인다.
Asp 코드에서는, 다음과 같이 오류페이지 소스코드를 구성하여, https:// 페이지로 전환을 할수가 있다. 물론 javascipt 등을 이용해서 몇초후에 전환된다건가, 사용자 클릭을 통해서 전환하는 코드를 추가 해도 좋을 것이다.
<%@Language=VBScript %>
<%
strQueryString = Request.QueryString
strAddress = Right(strQueryString, Len(strQueryString) - Instr(1,strQueryString, ";"))
strSecure = Replace(strAddress, "http:", "https:", 1, 1)
Response.Redirect strSecure
%>
<%
strQueryString = Request.QueryString
strAddress = Right(strQueryString, Len(strQueryString) - Instr(1,strQueryString, ";"))
strSecure = Replace(strAddress, "http:", "https:", 1, 1)
Response.Redirect strSecure
%>
닷넷에서는 여러가지 방법이 있겠지만, 가장 간단한 방법은 다음과 같다.
strUrl = Request.Url.ToString();
Response.Redirect(strUrl.Replace("http","https"))
Response.Redirect(strUrl.Replace("http","https"))
07-ssl_1.png
07-ssl_2.png
07-ssl_3.png
댓글 없음:
댓글 쓰기