Symfony 2의 CSS 파일 자산 경로
문제:
Symfony 2의 이미지와 CSS 파일 통합 특정 디렉터리 구조.
시도한 솔루션:
-
절대 경로: CSS 파일에서 절대 경로를 유지하는 것은 확장 가능한 솔루션이 아닙니다. 잠재적인 배포 문제.
-
"cssrewrite" 필터를 사용하는 자산: cssrewrite 필터를 사용하면 어떤 경우에는 도움이 되지만 잘못된 경로가 생성될 수 있습니다.
-
상대적 "../"가 포함된 경로: 이 접근 방식은 개발 환경에서는 작동하지만 프로덕션 환경에서는 문제가 발생합니다.
최종 해결 방법:
옵션 1: 컴파일 후 원본 CSS 파일 제거
- 원본 CSS 파일을 비공개 "assets" 디렉터리에 저장합니다.
- CSS 파일을 공개 " Assetic:install을 사용하여 web" 디렉토리를 삭제합니다.
- assetic:dump를 수행하여 CSS를 컴파일하고 /web/css/stylexyz.css에 최종 버전을 생성합니다.
- /에서 원본 CSS 파일을 삭제합니다. 자산:dump 이후의 공용 디렉토리
옵션 2: CSS를 사전 컴파일하고 공용 디렉토리에 직접 설치
- 다음을 사용하여 CSS를 사전 컴파일합니다. 선호하는 방법(예: Sass, Less).
- 미리 컴파일된 CSS 파일을 공개 "웹" 디렉터리에 복사합니다.
- assetic:install을 통해 CSS 파일을 설치합니다. 컴파일된 CSS 파일에 대한 심볼릭 링크.
- assetic:install 후에 공용 디렉토리에서 원본 CSS 파일을 삭제합니다.
이점:
- 원하는 디렉토리 구조를 준수합니다.
- 원본 CSS 파일이 대중에게 노출되는 것을 방지합니다.
- 이미지에 대한 올바른 경로 참조를 보장합니다.
- 사용을 허용합니다. CSS 필터.
고려 사항:
- 최종 솔루션은 CSS 파일이 사전에 있다고 가정하므로 Twig에서 자산() 사용을 건너뜁니다.
- 필요에 따라 CSS 파일 설치 및 제거를 처리하려면 배포 또는 자동화된 프로세스를 설정하는 것이 중요합니다.
위 내용은 Symfony 2 애플리케이션용 CSS 파일의 자산 경로를 관리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!