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

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

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

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Laravel 4

Laravel 4 とはTaylor Otwellによって開発された、オープンソースなPHPwebアプリケーション開発フレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

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

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Q&A

解決済

2回答

6621閲覧

Laravelのルートにアクセスすると「Class 'App\Providers\ApplicationServiceProvider' not found」と出る

suzumi

総合スコア82

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Laravel 4

Laravel 4 とはTaylor Otwellによって開発された、オープンソースなPHPwebアプリケーション開発フレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

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

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

0グッド

1クリップ

投稿2014/09/09 07:18

vagrant + シェルスクリプトでLaravelのセットアップまでを自動構築したいと設定ファイルを書いてるのですが詰んでます。
なんとかLaravelを動かすところまでいったのですが、ルートにアクセスすると以下のエラーが出てしまいます。

Class 'App\Providers\ApplicationServiceProvider' not found

![ルートにアクセス]WIDTH:600

ホストOS側の階層はこんな感じです。

作業用ディレクトリ ├ プロジェクト本体のディレクトリ(Laravel) └ vagrantファイルがあるディレクトリ ├Vagrantfile └セットアップ用シェルスクリプト

Vagrantfileの共有ディレクトリ設定

config.vm.synced_folder "../プロジェクト本体", "/var/www", owner: "vagrant", group: "nginx", :mount_options => ['dmode=777','fmode=777']

nginxの設定(全体)

server { listen 80; server_name localhost; #charset koi8-r; #access_log /var/log/nginx/log/host.access.log main; location / { root /var/www/public; index index.php; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /var/www/public; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ .php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ .php$ { root /var/www/public; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/public$fastcgi_script_name; include fastcgi_params; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /.ht { # deny all; #} }

php-fpmの設定(変更部分のみ抜粋 user/groupをapache→nginxに変更)

; Unix user/group of processes ; Note: The user is mandatory. If the group is not set, the default user's group ; will be used. ; RPM: nginx Choosed to be able to access some dir as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx

パーミッションの設定がおかしいのか、他に原因があるのかさっぱりです。
また以下のように作成済みのAPIに対してアクセスするとLaravelのルーティングエラーではなく、nginxの404エラーが返ってくるのですがこれも設定が悪いのでしょうか?

192.168.33.10/api/hoge?id=1

どなたかお知恵を貸し下さい。

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

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

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

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

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

guest

回答2

0

ベストアンサー

まずはエラーの内容を特定しないといけませんね。

app/storage/logs/laravel.log にエラー内容が出力されているはずです。

差し支えのない範囲で貼り付けて見てください。

投稿2014/09/09 08:13

localdisk

総合スコア84

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

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

suzumi

2014/09/09 08:50

app/storage/logs/laravel.logには特に何も出力されていませんでした。 代わりにnginxのエラーログを見ると > /var/www/public/api/hoge" failed (2: No such file or directory) とあります。 php-fpmも動作してるようです。 > service php-fpm status > php-fpm (pid 1627) is running... 過去にどこかのサイトでhtaccessの設定が云々って見かけたのですが、関係ありそうでしょうか?
localdisk

2014/09/09 09:15

見なおしたところ、nginx の設定がおかしいように思います。 location / { root /var/www/public; index index.php; } を location / { try_files $uri $uri/ /index.php?$query_string; } と変更してみてください。
suzumi

2014/09/09 09:47

自己解決しました!と書き込もうと思ってたのですが見事に的確な回答を頂いていました・・・笑 locationディレクティブを似たようにしたら動作致しました。 無事解決致しました。ありがとうございます!
guest

0

多分ですが Composer まわりのような気がします。

composer dump-autoload してから実行してみてください。

投稿2014/09/09 08:02

localdisk

総合スコア84

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

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

suzumi

2014/09/09 08:09

dump-autoloadでウェルカムページが出ました! ありがとうございます! また、nginxの404エラーが返る現象にもお知恵を貸して頂けると嬉しいです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問