Pendahuluan:
Pada beberapa kasus, saat mendeploy aplikasi Laravel ke server, terkadang pengguna mengalami masalah di mana link CSS yang dihasilkan menggunakan method dinamis asset
tidak berfungsi seperti yang diharapkan. Solusi untuk masalah ini dapat ditemukan dengan melakukan pengaturan tertentu di AppServiceProvider
. Berikut adalah langkah-langkah untuk mengatasi masalah tersebut.
Langkah-langkah:
Buka File AppServiceProvider:
Buka file AppServiceProvider.php
yang terletak di direktori app/Providers
.
Tambahkan Fungsi Boot:
Di dalam file AppServiceProvider
, tambahkan fungsi boot
dan atur pengaturan untuk memaksa penggunaan protokol HTTPS.
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\URL;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
if (env('APP_ENV') !== 'local') {
URL::forceScheme('https');
}
}
}
Simpan dan Deploy Ulang:
Simpan perubahan pada AppServiceProvider
dan deploy ulang aplikasi Laravel Anda ke server.
Periksa Link CSS:
Setelah redeploy, periksa apakah link CSS sekarang berfungsi dengan baik dan tanpa masalah.
Penjelasan:
- Fungsi
boot
dijalankan setiap kali aplikasi di-boot. Di dalamnya, kita menggunakan URL::forceScheme('https')
untuk memaksa penggunaan protokol HTTPS.
- Kondisi
if (env('APP_ENV') !== 'local')
memastikan bahwa penyesuaian ini hanya dilakukan jika aplikasi dijalankan di luar lingkungan pengembangan lokal.