이제 자산:dump를 실행하면 Symfony2의 Assetic 구성 요소는 logo.png 및 style.css를 /web 디렉터리로 내보냅니다. /src에 직접 액세스할 수 없기 때문에 이제 logo.png 및 style.css는 새로 내보내기됩니다. 디렉토리:
으아악
11e4a17.css(style.css 이름이 변경된 이후의 파일)와 logo.png 사이의 상대적 관계가 변경된 것을 볼 수 있습니다. 원본 ../img/logo.png는 더 이상 logo.png를 참조할 수 없습니다. cssrewrite의 특징은 11e4a17.css(style.css)의 ../img/logo.png를 ../bundles/app/img/logo.png로 업데이트한다는 것입니다.
Assetic을 사용하는 경우 cssrewrite 파일러를 추가해야 합니다. 즉:
으아악이 필터는 무엇을 의미하나요?
자산:dump(또는 자산:설치)를 수행하면 Symfony2는 정적 파일(CSS)을 번들에서 웹 루트 디렉터리로 이동하므로 일부 파일의 경로가 변경됩니다(예: CSS 이미지에서 참조되는 경로). 피험자가 언급한 문제를 일으키는 원인이 됩니다.
그래서 cssrewrite 필터는 특히 CSS와 이미지 간의 상대적 관계를 계산하고 CSS에서 경로를 직접 업데이트하는 데 사용됩니다.
실제 예를 들어 보겠습니다. 이제 logo.png와 style.css라는 두 개의 파일이 있습니다.
으아악style.css에서 logo.png를 참조하려면 ../img/logo.png가 필요하죠?
이제 자산:dump를 실행하면 Symfony2의 Assetic 구성 요소는 logo.png 및 style.css를 /web 디렉터리로 내보냅니다. /src에 직접 액세스할 수 없기 때문에 이제 logo.png 및 style.css는 새로 내보내기됩니다. 디렉토리:
으아악11e4a17.css(style.css 이름이 변경된 이후의 파일)와 logo.png 사이의 상대적 관계가 변경된 것을 볼 수 있습니다. 원본 ../img/logo.png는 더 이상 logo.png를 참조할 수 없습니다. cssrewrite의 특징은 11e4a17.css(style.css)의 ../img/logo.png를 ../bundles/app/img/logo.png로 업데이트한다는 것입니다.
말하기가 너무 길어서 질문자님께 도움이 되었으면 좋겠습니다.
문서를 아직 안 읽어보셨을 텐데, 드릴게요
Assetic을 자산 관리에 활용하는 방법