🎨

Laravelでvendorが追加するrouteを無効化する

2022/11/30に公開

はじめに

Laravelでサードパーティ(vendor)が追加するrouteを念のため無効化しました。
サードパーティが追加するrouteは次のコマンドで確認できます。

php artisan route:list --only-vendor

実行結果例

  POST       _ignition/execute-solution ignition.executeSolution › Spatie\LaravelIgnition › ExecuteSolutionControl…
  GET|HEAD   _ignition/health-check ......... ignition.healthCheck › Spatie\LaravelIgnition › HealthCheckController
  POST       _ignition/update-config ...... ignition.updateConfig › Spatie\LaravelIgnition › UpdateConfigController
  GET|HEAD   sanctum/csrf-cookie ................ sanctum.csrf-cookie › Laravel\Sanctum › CsrfCookieController@show
  GET|HEAD   stripe/payment/{id} ....................... cashier.payment › Laravel\Cashier › PaymentController@show
  POST       stripe/webhook ................... cashier.webhook › Laravel\Cashier › WebhookController@handleWebhook

無効化手順

venderディレクトリ配下の登録処理を直接修正して無効化することはイマイチなので、Routeを上書き設定する方法で無効化しています。

routes/web.php
// Disable vendor routes
Route::any('stripe/webhook', function () {
    return abort(404);
});
Route::any('stripe/payment/{id}', function () {
    return abort(404);
});

備考

基本的には無効化しなくても良いのですが、重度な不具合の可能性を懸念しての対応となります。

Discussion