2012-06-02 3 views
3

현재 웹 사이트의 경로를 얻으려고하고 있으며 URL을 가져 오기 위해이 작업을 수행하고 있습니다.우리가 호출하는 웹 사이트의 URL을 가져 오십시오.

Uri uri = HttpContext.Current.Request.Url; 
string callbackUrl = uri.Scheme + "://" + uri.Host + (uri.IsDefaultPort ? "" : ":" + uri.Port) + "/Work"; 

개발 서버에서 정상적으로 작동하지만 https 사이트 인 프로덕션에서는 작동하지 않습니다.

uri.Scheme이 내게 http를 제공합니다. 내가 여기서 잘못하고있는 것은 무엇인가. 이 코드가 https 사이트에서 호출 될 때 uri.Scheme이 http 대신 https를 반환하는 방법이 있습니까?

감사

답변

1

IIS는 HTTPS 요청을 Request.Url에 영향을 미치는 몇 가지 필터링을 수행합니다. 인터넷 검색을 마치고 몇 가지 제한이있는 것처럼 보입니다. 블로그 게시물 this을 기반으로 맞춤 솔루션을 찾아야 할 수도 있습니다.

+0

링크 Nadir에 감사드립니다. 지금이 두 개의 프로젝트에이 코드가 있으며 일부는 mvc가 아닙니다. 보안 된 https 사이트 또는 보안되지 않은 http에 있는지 알 수있는 방법이 있습니까 – gurrawar

+0

Request.IsSecureConnection을 시도 했습니까? –

+0

방금 ​​시도했지만 Request.IsSecureConnection은 제작 즉 https 사이트에서 false를 반환합니다. – gurrawar

관련 문제