Rumah >rangka kerja php >Laravel >Laravel tidak dapat mencari gaya
Apabila membangunkan aplikasi web, adalah perkara biasa untuk menggunakan beberapa rangka kerja dan perpustakaan bahagian hadapan. Laravel, sebagai rangka kerja web PHP yang popular, boleh menyepadukan pelbagai rangka kerja dan perpustakaan bahagian hadapan. Tetapi kadangkala anda akan mendapati bahawa gaya yang diharapkan tidak dapat dimuatkan dalam projek Laravel anda Pada masa ini, anda perlu mengetahui di mana masalahnya dan menyelesaikan masalah.
Pertama, anda perlu memastikan fail gaya anda wujud. Dalam projek Laravel, fail CSS dan JS biasanya disimpan dalam direktori awam Anda boleh menyemak sama ada fail gaya anda wujud dengan memasukkan http://localhost:8000/css/your_css_file.css dalam bar alamat penyemak imbas. Jika fail tidak wujud, Laravel tidak menjananya dengan betul semasa memulakan projek.
Projek Laravel melakukan banyak operasi apabila ia dimulakan. Salah satu operasi ini ialah memanggil perintah servis artisan, yang memulakan perkhidmatan yang mengeluarkan aplikasi ke penyemak imbas. Biasanya, jika fail gaya tiada, puncanya mungkin kegagalan untuk lulus parameter semasa menjalankan arahan atau kebenaran direktori yang tidak mencukupi.
Apabila anda menggunakan Laravel Mix dan alatan binaan bahagian hadapan yang lain, anda perlu menjana fail CSS dan JS. Laravel Mix akan menyusun kod sumber menjadi kod yang boleh difahami oleh penyemak imbas dan menyimpannya dalam folder awam. Jika anda ingin merujuk fail ini dalam projek Laravel anda, anda perlu memastikan ia disimpan dalam laluan yang betul. Ini kerana Laravel tidak tahu fail mana yang harus digunakan untuk pemaparan bahagian hadapan.
Jika fail CSS dan JS dalam projek Laravel anda wujud, maka anda perlu menyemak sama ada fail gaya dirujuk dengan betul. Masalah biasa yang boleh timbul ialah apabila anda menggunakan fungsi asset() untuk merujuk fail CSS dan JS dalam fail, ia tidak dapat menyelesaikan laluan fail dengan betul. Masalah ini berkemungkinan besar berlaku apabila menggunakan pengehosan kongsi Laravel.
Untuk menyelesaikan masalah ini, anda boleh menggunakan fungsi url() dan bukannya fungsi asset(). Ini kerana URL yang dijana oleh fungsi url() sentiasa relatif kepada direktori akar projek anda. Apabila menggunakan fungsi url(), anda perlu memastikan bahawa terdapat garis miring utama dalam URL permintaan anda. Anda boleh menggunakan kod berikut dalam fail paparan anda:
<link href="{{ url('/css/your_css_file.css') }}" rel="stylesheet"> <script src="{{ url('/js/your_js_file.js') }}"></script>
Jika anda menggunakan PHP-FPM semasa menjalankan PHP pada pelayan, atau menggunakan pelayan HTTP untuk proksi terbalik, maka anda perlu menambah beberapa konfigurasi tambahan. Tambahkan konfigurasi berikut pada Nginx:
location / { try_files $uri $uri/ /index.php?$query_string; }
Dengan cara ini, jika fail gaya anda tidak ditemui, Laravel akan memajukan permintaan ke fail index.php untuk memastikan permintaan itu boleh diproses.
Jika laluan fail gaya anda betul, tetapi ia masih tidak dapat dimuatkan dengan betul, ini mungkin masalah cache. Anda boleh mengosongkan cache penyemak imbas anda dan memuat semula halaman dan melihat sama ada isu itu telah diselesaikan. Jika ia masih tidak berfungsi, anda boleh menjalankan arahan berikut untuk mengosongkan fail cache Laravel:
php artisan cache:clear php artisan config:cache php artisan route:cache
Arahan ini akan mengosongkan fail cache Laravel dan menjananya semula. Selepas melaksanakan arahan ini, anda perlu memulakan semula perkhidmatan Laravel supaya ia memuatkan semula fail cache.
Ringkasnya, jika fail gaya tidak boleh dimuatkan dalam projek Laravel anda, maka anda perlu menyemak sama ada fail gaya wujud, sama ada laluan fail gaya adalah betul, sama ada kod yang merujuk fail gaya adalah betul, dan sama ada cache telah dikosongkan. Selepas menyelesaikan masalah ini, projek Laravel anda akan memuatkan fail gaya dengan betul.
Atas ialah kandungan terperinci Laravel tidak dapat mencari gaya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!