Laravelを入れるにあたってちょっと嵌ったこととか、役に立てばいいなと思い書き記しておきます。
因みにphpのバージョンは7.3です。
Composerをいれる
$ php -r "unlink('composer-setup.php');"
$ sudo mv composer.phar /usr/local/bin/composer
$ sudo chmod +x /usr/local/bin/composer
$ composer
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.9.0 2019-08-02 20:55:32
Usage:
.
.
.
laravelをいれる
$ composer global require "laravel/installer=~1.1"
$ laravel
Laravel Installer 1.5.0
Usage:
.
.
.
プロジェクトの作成(ここで嵌った)
laravelappという名前のプロジェクトを作成します。すると、
Crafting application...
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for erusev/parsedown 1.7.3 -> satisfiable by erusev/parsedown[1.7.3].
- erusev/parsedown 1.7.3 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
Problem 2
- Installation request for laravel/framework v5.8.31 -> satisfiable by laravel/framework[v5.8.31].
- laravel/framework v5.8.31 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
Problem 3
.
.
.
なんだか色々問題があったらしい。
エラーから察するにext-mbstringが必要なのかなと
sudo apt install php7.3mbstring
して、もう一度やってみます。
すると、Application already exists!
と怒られた。どうやらプロジェクトのディレクトリはできているらしい。
てなことでlaravelappディレクトリに移動した後php artisan serve
するとこんなエラーが出た。
PHP Warning: require(/home/hibiki/tmp/laravel/laravelapp/vendor/autoload.php): failed to open stream: No such file or directory in /home/hibiki/tmp/laravel/laravelapp/artisan on line 18
PHP Fatal error: require(): Failed opening required '/home/hibiki/tmp/laravel/laravelapp/vendor/autoload.php' (include_path='.:/usr/share/php') in /home/hibiki/tmp/laravel/laravelapp/artisan on line 18
ぐぐってみたところ、composer install
で解決するらしい。
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for phar-io/manifest 1.0.3 -> satisfiable by phar-io/manifest[1.0.3].
- phar-io/manifest 1.0.3 requires ext-dom * -> the requested PHP extension dom is missing from your system.
Problem 2
- Installation request for phpunit/php-code-coverage 6.1.4 -> satisfiable by phpunit/php-code-coverage[6.1.4].
- phpunit/php-code-coverage 6.1.4 requires ext-dom * -> the requested PHP extension dom is missing from your system.
Problem 3
.
.
.
こんな感じでProblemがいっぱい出た(既視感)
ext-domってなんや?
調べると、php7.3-xmlというパッケージのことらしい。
sudo apt install php7.3-xml
(適宜phpのバージョンは変えてください。)
composer install
すると成功した。
あとはphp artisan serve
でLaravelのページが表示されれば成功や!
ポチッ
???
調べてみると、隠しファイル.env(.env.sampleというファイルの中身をcp)を作って、
encryption keyを追加することで500エラーは治るみたいです。
keyのほうはこうした。
$ php artisan key:generate
$ php artisan config:clear
ってことで無事Laravelが表示されたのでおしまい。
参考文献
色々なOSでcomposerインストール方法をマスターする
laravelで サーバーを起動することができません
【Larvel】Larvelに入門してみた。プロジェクト作成まで
PHPUnitを、Composerでインストールする時のメモ
殺意!Laravelを初期導入したら500エラーが出た件!