2012-08-09 5 views
2

내 개발 서버에서 HttpContext.Current.Request.ApplicationPath은 경로를 올바르게 반환하지만 프로덕션에서는 비어있게됩니다.HttpContext.Current.Request.ApplicationPath가 프로덕션 환경에서 비어 있습니다.

왜 이런가?

내가 URL의 구축이를 사용하고, 현재 생산에 대한 링크가 보이는대로 작동하지 않습니다

http://section/page1.aspx 

하지만이 있어야한다 : 무슨 원인이 될 수

https://www.example.sub.com/section/page1.aspx 

이?

+3

호스트 이름을 전혀 반환하지 않아도됩니다. [MSDN에 따르면] (http://msdn.microsoft.com/en-us/library/system.web.httprequest.applicationpath.aspx), ApplicationPath 응용 프로그램의 가상 경로를 반환합니다. 어떤 호스트가 포함되지 않습니다. – Vlad

+0

@Vlad 당신이 맞습니다. 이상하게도 내 개발 서버에서 작동합니다 (가상 경로를 사용하지 않는 것처럼 보입니다). – loyalflow

답변

3

속성 ApplicationPath 속성은 응용 프로그램이있는 폴더의 경로를 반환하며 도메인 이름은 포함하지 않습니다.

개발 서버의 도메인 이름과 같은 이름의 폴더에 응용 프로그램을 넣었다고 생각합니다. 그런 다음이 속성은 실제 도메인이 아닌 폴더의 이름을 반환합니다. 당신이
시도하십시오 당신은 문제가 있다면 알려 주시기 응용 프로그램 경로 루트 URL을 필요로 할 때

0

PLS는

.......이 기능이

public static string RootURL { 
get { 
    var _with1 = System.Web.HttpContext.Current.Request; 
    return _with1.Url.Scheme + "://" + _with1.Url.Host + _with1.ApplicationPath; 
} 

}

사용을 시도

관련 문제