Laravelで500 Server Errorが出る原因と解決方法

Laravelをgithubからcloneした際にWEBアプリにブラウザからアクセスした際に500 ServerErrorが発生しました。

500エラーは解決することができましたので、Laravelで500ServerErrorがでる原因と解決方法を記事にしました。

Laravelで500 Server Errorが出る原因と解決方法

.envファイルがない

自分の場合は.envファイルが存在しない、ということがエラーの原因でした。githubでcloneすると.envファイルは含まれておらず、.env.exampleとなっています。

そのため、この.env.exampleをコピーして.envファイルを作成する必要があります。

.envファイルを作成

,envファイルを.env.exampleからコピーして新規に作成していきます。

まずはLaravelのプロジェクトディレクトリへcdコマンドで移動します。

cd プロジェクトディレクトリ

【Macの場合】

cp .env.example .env

【Windowsの場合】

copy .env.example.env

 

上記コマンドを使用後に再度Laravelアプリにアクセスすると下記のような表示になりました。

Your  app key is missing と表示され、Genearte app keyと書かれています。

アプリケーションキーを作成してください。とのことです。

キーを作成する

php artisan key:generate

上記コマンドを入力しますと、.env内の「APP_KEY=」にキーが作成されます。

「Application key set successfully.」と表示された後にLaravelアプリにアクセスしたら、無事にアプリが表示されました。

もしエラーが続く場合は、キャッシュクリアを試す

もし、この時点でエラーが解決しない場合は、キャッシュをクリアして、.envを再度読み込ませましょう。

php artisan cache:clear

上記のコマンドでキャッシュクリアができますので、クリア後に再度ブラウザでWEBアプリにアクセスしてみてください。

エラーの原因調査方法

500エラーの原因の多くは.envですが、原因が他にあった場合は前述の方法ではエラー解決することはできません。

500errorはLaravelのエラーログを確認しよう

500errorはブラウザ上では原因が表示されませんので、Laravelのエラーログを参照しましょう。

strage/logs/laravel.log

Laravelの場合はエラーログは上記に蓄積されていきます。

おもむろにlaravel.logを開くと上記のように大量に文字がありまして、複雑にみえます。

しかし数字の連番となっている部分は無視して、見るべきところは、赤矢印で記載した「ERROR」と表示されている行です。

こちらにエラーの原因が書かれていますので、そちらを元に解決します。

 

コメントを残す

メールアドレスが公開されることはありません。