こちらの記事でLaravelアプリを無事サーバーにアップロードしたものの、
本番環境でapiを動かしてみると Target class [***Controller] does not exist. というエラーが出てしまいました。
※axiosでのエラーなので実際ブラウザにはエラーは出ていません。
.envでdebug=trueに変更し、axiosを動かすと開発ツールネットワークタブ > プレビュー でエラー内容が確認できました。
Target class [***Controller] does not exist.の原因
ローカルではエラーになっていなかったのになーと思いつつ、本エラーの原因を調査。
- 大文字小文字の記述ミスがないか
- api.phpの記述方法がLaravel9仕様になっているか
このあたりに問題がある場合が多いようです。
ただ、今回の場合はnamespace、routeの記述にも変なところはない。。。うーん
ディレクトリ名の大文字子文字違いが原因
原因は、Controllerを入れていたディレクトリ名の「 api 」を、ファイル内のuseでは「Api」と記述していたことでした。
変更したら無事動作しました〜。