Rumah > hujung hadapan web > tutorial css > Bagaimana untuk Mengurus Laluan Aset CSS dalam Symfony 2 untuk Penggunaan yang Selamat dan Cekap?

Bagaimana untuk Mengurus Laluan Aset CSS dalam Symfony 2 untuk Penggunaan yang Selamat dan Cekap?

Mary-Kate Olsen
Lepaskan: 2024-11-12 09:18:01
asal
947 orang telah melayarinya

How to Manage CSS Asset Paths in Symfony 2 for Secure and Efficient Deployment?

Laluan untuk Aset CSS dalam Symfony 2

Masalah:

Dalam projek Symfony 2 , anda mempunyai fail CSS dengan rujukan kepada imej dan fon (cth., url(..)). Anda ingin merujuk fail ini dalam CSS tanpa mendedahkan secara langsung yang asal dalam direktori awam.

Penyelesaian Kemungkinan:

Penyelesaian 1: Laluan Mutlak

Menukar semua laluan dalam CSS kepada laluan mutlak bukanlah penyelesaian yang sesuai kerana aplikasi mungkin tidak sentiasa boleh diakses daripada subdirektori yang sama.

Penyelesaian 2: Asetik dengan Penapis "cssrewrite"

Menggunakan Assetic dengan penapis "cssrewrite" boleh membantu menulis semula laluan , tetapi ia sering mengakibatkan laluan yang salah generasi.

Penyelesaian 3: Laluan Relatif

Menukar semua laluan dalam CSS menjadi relatif kepada lokasi lembaran gaya berfungsi kecuali dalam persekitaran pembangunan, di mana laluan CSS mengandungi "/app_dev.php" dan membawa kepada "NotFoundHttpException" untuk imej laluan.

Penyelesaian Berfungsi:

Satu-satunya penyelesaian yang berfungsi ialah meletakkan fail CSS asal dalam direktori peribadi (cth., "Sumber/aset/css") dan menyusunnya ke direktori awam (cth., "web/css") menggunakan Asetik.

Struktur Kod:

...
+-src/
| +-MyCompany/
|   +-MyBundle/
|     +-Resources/
|       +-assets/
|         +-css/
|           +-stylesheets...
+-web/
| +-css/
|   +-stylexyz.css
| +-images/
|   +-images...
...
Salin selepas log masuk

Kod Ranting Asetik:

{% stylesheets
    '@MyCompanyMyBundle/Resources/assets/css/*.css'
    filter="cssrewrite"
%}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
Salin selepas log masuk

Proses Penyusunan :

Proses ini akan memastikan bahawa fail CSS adalah disusun ke dalam direktori awam dengan laluan imej yang betul:

  1. Salin fail CSS asal ke direktori awam.
  2. Jalankan "assetic:dump" untuk menyusun fail CSS.
  3. Alih keluar fail CSS asal daripada orang ramai direktori.

Kelebihan:

  • Membolehkan untuk menyimpan fail CSS asal dalam direktori peribadi.
  • Mengkompil CSS kepada orang ramai direktori dengan laluan imej yang betul.
  • Tidak mendedahkan fail CSS asal kepada awam.

Atas ialah kandungan terperinci Bagaimana untuk Mengurus Laluan Aset CSS dalam Symfony 2 untuk Penggunaan yang Selamat dan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan