質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

さくらのレンタルサーバ

さくらのレンタルサーバとは、格安サーバーで知られるさくらインターネット社の提供する共有レンタルサーバー。Webサイトの構築から簡単なプログラミングまで幅広く利用することができ、プランが多いことも特徴です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

解決済

1回答

640閲覧

【解消済】PHP/Laravel5.1 CentOS7サーバで、artisanコマンドが使用できない

hika-rakuyo

総合スコア15

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

さくらのレンタルサーバ

さくらのレンタルサーバとは、格安サーバーで知られるさくらインターネット社の提供する共有レンタルサーバー。Webサイトの構築から簡単なプログラミングまで幅広く利用することができ、プランが多いことも特徴です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

0クリップ

投稿2021/05/13 10:58

編集2021/05/24 00:12

前提・実現したいこと

開発環境 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 migratephp 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に関係するパッケージが入っていなかったらしく、
それ単体なのかパッケージの全てなのか、とりあえず入れ直したら、
こちらの問題も解消できたということです。
詳しくは下記の自己解決方法に記載させていただきます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mg_ss

2021/05/14 06:53

解消しましたら、質問を「解決済み」に変えていただけると良いと思います。
hika-rakuyo

2021/05/15 02:18

初めまして、修正依頼ありがとうございます。 すぐにでも「自己解決」を埋めたいところなのですが、諸事情で後回しにしている状況でです…。 1週間以内にはこの記事の内容を充足させる時間を作ります。ご迷惑をおかけして申し訳ありません。
guest

回答1

0

自己解決

PHPのパッケージを再度インストールしたらartisanコマンドも通常通り動作するようになった、と先輩に助けていただきました。

現状から問題点を探し当てて修正するというアプローチではなく、環境そのものを疑ってかかる、その上で思い切って環境構築をやり直す勇気を持つべきでしたね。
どなたかのご参考になれば幸いです。

投稿2021/05/24 00:11

hika-rakuyo

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問