PCS開発チーム

PCS開発チーム

Laravel11 Viteが出力するURL・パスの変更方法

Bladeでの@viteは

@vite(['resources/css/app.css', 'resources/js/app.js'])

こういうhtmlで出力される。

<link rel="preload" as="style" href="http://localhost/build/assets/app-***.css" />

http://localhost/が不要な場合は削除できる。

// app/Providers/AppServiceProvider.php

use Illuminate\Support\Facades\Vite;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function boot(): void
    {
        Vite::createAssetPathsUsing(fn (string $path) => "/$path");
    }
}

変更後。

<link rel="preload" as="style" href="/build/assets/app-***.css" />

「ワイルドカードサブドメインを使っている」とか「CDNから配信したい」ような時もこれでドメインを変更することもできる。CDNからのように固定なら.envのASSET_URLでもいいけどVite::createAssetPathsUsing()はViteだけが対象。