MVC4 StyleBundle이 이미지를 확인하지 못함
문제:
MVC4 프로젝트에는 다음과 같은 번들링 시스템이 포함됩니다. 성능을 향상시키기 위해 CSS 파일을 최소화하고 결합합니다. 그러나 StyleBundle을 사용하여 jQuery UI와 같은 외부 소스의 이미지 참조를 포함하면 브라우저가 이미지를 로드하지 못해 404 오류가 발생할 수 있습니다.
해결책:
MVC4 CSS 번들링에 대한 논의에 따르면 이 문제를 해결하기 위해 두 가지 접근 방식을 사용할 수 있습니다. 문제:
소스 경로와 함께 번들 경로 사용
다음과 같이 소스 CSS 파일과 동일한 경로를 사용하여 StyleBundle을 생성합니다.
bundles.Add(new StyleBundle("~/Content/css/jquery-ui/bundle") .Include("~/Content/css/jquery-ui/*.css"));
번들 경로를 소스 폴더로 정의하면 CSS 파일 내의 상대 이미지 경로는 계속 유지됩니다.
CssRewriteUrlTransformation 사용
또는 StyleBundle에 CssRewriteUrlTransformation을 적용할 수도 있습니다. 이 변환은 CSS 파일에 대한 상대 URL 참조를 번들 내의 절대 경로로 다시 작성하여 이미지가 올바르게 로드되도록 합니다.
bundles.Add(new StyleBundle("~/Content/css/jquery-ui/bundle") .Include("~/Content/css/jquery-ui/*.css", new CssRewriteUrlTransform()));
가상 디렉터리 내에서 절대 경로로 다시 쓰면 문제가 발생할 수 있습니다. 이 접근 방식이 특정 환경에서 예상대로 작동하는지 확인하십시오.
위 내용은 내 이미지가 MVC4 스타일 번들에 로드되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!