Laravelのpublicフォルダ名を変更する

Laravelではドキュメントルートがpublicとして用意されています。
サーバーによってはドキュメントルートがpublicではないこともあるため、publicのフォルダ名をhtmlに変更する方法です。

laravel/frameworkのバージョンはv9.45.1です。

Laravelの変更

app\Providers\AppServiceProvider.phpregister関数に追記します。

AppServiceProvider.php
/**
 * Register any application services.
 *
 * @return void
 */
public function register()
{
    $this->app->bind('path.public', function () {
        return base_path() . '/html';
    });
}

viteの変更

vite.config.jsのlaravel-vite-pluginにpublicDirectoryを追加します。

vite.config.js
export default defineConfig({
    plugins: [
        laravel({
            publicDirectory: 'html',
            input: ['resources/css/app.css', 'resources/js/app.js'],
            refresh: true,
        }),
    ],
});