SNSサイト作りの試み1 Laravelの環境構築

ポートフォリオ的なものが欲しいと思い、

LaravelでSNSサイトっぽいものを作ろうと思った。

 

以前面談で話したときに「モノが完成していなくても、どういうコードを書く人がわかればよい」と聞けて、なるほどと思った。

Webサイトもいいけど、暇があったらAndroidの簡単なアプリも作ってみたいな。

 

以下、Laravelの環境構築なのだけれども、

これは以前、以下の記事で書いている。

Vagrantを用いたLaravel環境構築 - addictionwhite’s diary

 

ただ、忘れてまた一から調べ持ってやるという愚かなことをしてしまったけれど、

少し違う過程を通ったので、参考程度に以下に残しておく。

 

VagrantFIleは以下のもの使用

GitHub - addictionwhite/vagrant1

 

/vagrant 直下で

composer create-project --prefer-dist laravel/laravel

インストーラにはcomposer以外にLaravelインストーラなるものがあるのだけれど、

面倒くさそうなのでcomposerで行うのが無難そう

 

-----------------引用 START-----------------
https://laravel10.wordpress.com/2015/02/13/laravel%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/
*** ご注意ください ***
2015/06/30現在、laravelインストーラv1.2.1にはバグがあります。
laravelインストーラは使わず、(1) composer 経由でプロジェクト作成を行うようにしてください。

参考情報
http://ja.stackoverflow.com/questions/11948

※ 今までも、laravelインストーラには何度も問題があり、しかも中々直らないので、プロジェクト作成はcomposer経由で行うのが無難なようです。一番大事なインストーラでバグが絶えないって、どういうこと。とほほ…

-----------------引用 END-----------------

 

 

作成されたLaravelディレクリ直下にて

composer install // いらないかも
composer update

// 上記のコマンド叩いても以下のエラー取れない

PHP Warning: require(/vagrant/laravel/vendor/autoload.php): failed to open stream:        No such file or directory in /vagrant/laravel/artisan on line 18
PHP Fatal error: require(): Failed opening required                                       '/vagrant/laravel/vendor/autoload.php'  (include_path='.:/usr/share/pear:/usr/share/php') in /vagrant/laravel/artisan on line 18

 

 


composer dump-autoload
  →エラーが変わった

PHP Fatal error: Uncaught Error: Class 'Illuminate\Foundation\Application' not found in /vagrant/laravel/bootstrap/app.php:14
Stack trace:
#0 /vagrant/laravel/artisan(20): require_once()
#1 {main}
thrown in /vagrant/laravel/bootstrap/app.php on line 14

composer install
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 40 installs, 0 updates, 0 removals
Failed to download laravel/framework from dist: The zip extension and unzip command are both missing, skipping.
The php.ini used by your command-line PHP is: /etc/php.ini
Now trying to download from source
- Installing laravel/framework (v5.5.14):

[RuntimeException]
Could not delete /vagrant/laravel/vendor/laravel/framework/.git/objects/pack/tmp_pack_tSvdTF:


install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [--no-suggest] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--ignore-platform-reqs] [--] [<packages>]...

 

/vagrant/laravel/vendor/laravel/framework/.git/objects/pack/tmp_pack_tSvdTF:

上記のファイルをフォルダ上から直接消そうとしたら(乱暴)以下のexeが握っていて消せないと出る。

VBoxHeadless.exe

 

VirtualBox関連が何か握っていると思ったので以下のコマンドを叩く
vagrant halt
→上記のtmpファイル消えている

 

再度仮想環境を立ち上げ

composer update
[Symfony\Component\Process\Exception\ProcessTimedOutException]
The process "git clone --no-checkout 'https://github.com/laravel/framework.git' '/vagrant/laravel/vendor/laravel/fr
amework' && cd '/vagrant/laravel/vendor/laravel/framework' && git remote add composer 'https://github.com/laravel/f
ramework.git' && git fetch composer" exceeded the timeout of 300 seconds.

 

//composerのインストール時間の設定が短いので変更
export COMPOSER_PROCESS_TIMEOUT=2000

composer install

*時間掛かる

 

Apacheの設定ファイルでドキュメントルートをLaravelのものに書き換え、

Apache再起動

(以下のURL参照)
Vagrantを用いたLaravel環境構築 - addictionwhite’s diary


再びアクセス

http://192.168.33.10/
*VagrantFileの設定で指定しているアドレス

 

以下のエラーが出る
RuntimeException
No application encryption key has been specified.

 

以下のコマンドを叩く

php artisan key:generate

 

Laravelトップページが表示されれば成功