前提・実現したいこと
開発環境 AWS cloud9 (t2.micro)
本番環境 CentOS 7.9.2009
使用言語 PHP7.0.33
フレームワーク Laravel 5.1.6
データベース MySQL 5.7.33
実現したい内容
「githubなどのリモートリポジトリサービスを経由して、開発済みサービスを新規サーバにデプロイする」
デプロイの際参考にしているサイト
[全体の流れ]Laravelをさくらインターネットのレンタルサーバにデプロイ・アップロードする方法をまとめてみた | Arrown
発生している問題
composer install
の実行後、php artisan migrate
や php artisan key:generate
などのartisan
コマンドが反応しません。
ターミナル上ではエラーが表示されず、完全にコマンドをスルーされている状態です。
また、composer install
の処理の最後の行には、このような警告が表示されます。
> Illuminate\Foundation\ComposerScripts::postInstall > php artisan optimize Script php artisan optimize handling the post-install-cmd event returned with error code 255
コマンドを打った瞬間のエラーコード
- /var/log/php/php.log
[13-May-2021 10:26:06 UTC] PHP Fatal error: Uncaught ReflectionException: Class log does not exist in /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php:741 Stack trace: #0 /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php(741): ReflectionClass->__construct('log') #1 /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php(631): Illuminate\Container\Container->build('log', Array) #2 /var/www/myapp/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(674): Illuminate\Container\Container->make('log', Array) #3 /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php(842): Illuminate\Foundation\Application->make('log') #4 /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php(805): Illuminate\Container\Container->resolveClass(Object(ReflectionParameter)) #5 /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php(775): Illuminate\Container\Container->getDependencies(Array, Array) #6 /var/myapp/first in /var/www/myapp/vendor/laravel/framework/src/Illuminate/Container/Container.php on line 741
試したこと
Uncaught ReflectionException: Class log does not exist
をヒントに調べています。
自分のわかる範囲でのみ修正を試みています。
[参考1] PHP7 で Laravel5 を試して出てきたエラー(その1) - でかるちゃー
[参考2] php - Uncaught ReflectionException: Class log does not exist Laravel 5.2 - Stack Overflow
[0] キャッシュの削除
composer dump-autoload
・・・変化なし
[1] .envの確認
変数定義中にスペースがないかどうか確認 ・・・ 対応済み、変化なし
[2] ログファイルのパーミッションを確認
# touch storage/logs/laravel.log
# chown -R apache:apache storage
# chmod 666 storage/logs/laravel.log
その後も変化なし…
解消しました
PHPのmysqlに関係するパッケージが入っていなかったらしく、
それ単体なのかパッケージの全てなのか、とりあえず入れ直したら、
こちらの問題も解消できたということです。
詳しくは下記の自己解決方法に記載させていただきます。
回答1件
あなたの回答
tips
プレビュー