문제

ASP .NET MVC 애플리케이션을 개발 중이며 DEV 시스템에서 응용 프로그램은 예상대로 실행되며 더 중요한 것은 CSS 파일에 언급 된 이미지도 올바르게 표시됩니다.

그러나이 응용 프로그램을 테스트 서버에 게시하면 웹 앱이 잘 실행되지만 이미지는 표시되지 않습니다.

테스트 서버에서 출력을 테스트 할 때 IE에서 URL을 수정하면 이미지가 반환됩니다. 즉, 파일이 있지 않지만 사이트를 정상적으로 사용할 때는보기 페이지 내에 표시되지 않습니다.

대체 서버도 시도했지만 결과는 동일합니다.

확인하려면 다음은 이미지를 참조하는 CSS 페이지의 줄입니다 ...

background-image: url('/Content/Images/Logo/myLogo.jpg');

제안이 있습니까?

건배

브렛

도움이 되었습니까?

해결책

URL은 올바른 것이 아니기 때문에 하위 폴더에 게시하고 있기 때문에 더 이상 서버의 루트에 있지 않기 때문일 수 있습니다. 나는 보통 사용합니다 Url.Content( "~/Content/Images/..." ) 하드 코딩 대신 URL을 구축합니다. 그렇게하면 경로를 구축 할 때 경로를 고려합니다.

예시:

 <img src='<%= Url.Content( "~/Content/Images/banner.jpg" ) %>' alt="Banner" />

다른 팁

같은 문제가 있었지만 내용 폴더에서 인증을 강요하는 이유를 발견했습니다.

사용자가 아직 로그인되지 않은 경우 익명 인증으로 분류됩니다. IIS7 (내가 사용하고있는 것, IIS6에서 동일하다고 추측)에서는 기능보기에서 인증 창을 열어야합니다. 그런 다음 익명 인증을 편집하고 응용 프로그램 풀 ID 또는 기본값을 사용하려면 사용자가 해당 폴더에서 읽을 권한이 있는지 확인하십시오.

그것은 나를 위해 그것을 고쳤다. 그것이 당신에게 효과가 있기를 바랍니다.

가능한 상대 경로는 잘못되었습니다 ... CSS 파일 자체에 대해 잘못되었을 가능성이 있습니다. FireBug를 사용하여 CSS가 올바르게로드되었는지 확인한 다음 이미지 요청을 검사 할 수 있습니다. 종종 이러한 상황에서는 빨간색 (오류) 항목이 표시됩니다. 이것은 문제를 현지화하는 데 도움이 될 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top