Laravelでインストールしたらやることのメモ

##概要
Laravelでアプリ作成時に自分がプロジェクト作成後、最初に設定していることをメモとしてまとめました。

何か間違い等がございましたら、ご指摘していただけたらと思います！

##新規プロジェクト作成
composerコマンドでLaravelのプロジェクトを作成します。


```:ターミナル
$ composer create-project --prefer-dist laravel/laravel <プロジェクト名>
```


念のため、Laravelが導入されたか確認。


```:ターミナル
$ cd ~/<プロジェクト名>
php artisan -v

Laravel Framework <バージョン>
```

##httpsへの対応

```app/Http/Middleware/TrustProxies.php``` の一部を下記のように変更します。


```php:app/Http/Middleware/TrustProxies.php
protected $proxies;

// 上記の記述を下記のように変更

protected $proxies = '*';
```

Laravel 5.5以前は```'**'```だそうです。

<a href="https://readouble.com/laravel/5.5/ja/requests.html?header=%25E4%25BF%25A1%25E7%2594%25A8%25E3%2581%2599%25E3%2582%258B%25E3%2583%2597%25E3%2583%25AD%25E3%2582%25AD%25E3%2582%25B7%25E3%2581%25AE%25E8%25A8%25AD%25E5%25AE%259A">【公式】Laravel 5.5 HTTPリクエスト</a>
<a href="https://readouble.com/laravel/8.x/ja/requests.html?header=%25E4%25BF%25A1%25E7%2594%25A8%25E3%2581%2599%25E3%2582%258B%25E3%2583%2597%25E3%2583%25AD%25E3%2582%25AD%25E3%2582%25B7%25E3%2581%25AE%25E8%25A8%25AD%25E5%25AE%259A">【公式】Laravel 8.x HTTPリクエスト</a>
// ページ最下部の「信用するプロキシの設定」参照

##APP＿NAMEの設定

```:.env
APP_NAME = <アプリケーション名>
```

```php:config/app.php
'name' => env('APP_NAME', '<アプリケーション名>'),
```

##APP＿KEY

```:ターミナル
$ php artisan key:generate
```

APP＿KEYの解説 → <a href="https://qiita.com/yk2220s/items/dcbf54c6d1f33a0cb06f">[Laravel5.5] APP_KEY の行方を追う</a>

##public/storageにstorage/app/publicへのシンボリックリンク作成

```:ターミナル
php artisan storage:link
```

解説

##データベースの設定
MySQLに接続し、データベースを作成（rootユーザーで作成する場合）

```:ターミナル
$ mysql -u root

mysql> CREATE DATABASE <データベース名>
```



```:env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=データベース名
DB_USERNAME=root
DB_PASSWORD=
```

.envファイルの変更が反映されない場合があるのでキャッシュクリアを。

```:ターミナル
$ php artisan cache:clear

$ php artisan config:cache
```
<a href="#">MySQLコマンドまとめ</a>

<details>
<summary>root以外のユーザーを作成し、使用する場合</summary><div>
上記のようにMySQLに接続し、データベースを作成。

以下の手順でユーザーを作成。

```
CREATE USER '<登録するユーザーの名前>'@'<アクセス元になるIP>' IDENTIFIED BY '<パスワード>'

#例（ユーザー名: user 、アクセス元: localhost 、 パスワード XXXXXXXX ）

CREATE USER 'user'@'localhost' IDENTIFIED BY 'XXXXXXXX'
```



```
GRANT ALL PRIVILEGES ON <プロジェクト名>.* TO 'user'@'localhost';
```

```:env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=データベース名
DB_USERNAME=root
DB_PASSWORD=
```

.envファイルの変更が反映されない場合があるのでキャッシュクリアを。

```:ターミナル
$ php artisan cache:clear

$ php artisan config:cache
```

</div></details>

##タイムゾーンの変更

```php:config/app.php
'timezone' => 'UTC',

// 変更

'timezone' => 'Asia/Tokyo',
```

##言語の日本語化

```php:config/app.php
'locale' => 'en',

// 変更

'locale' => 'ja',
```

```php:config/app.php
'faker_locale' => 'en_US',

// 変更

'faker_locale' => 'ja_JP',
```

##ログイン画面やエラーメッセージなどの日本語化
こちらは<a href="https://qiita.com/nknk123/items/ed3034ee5a02f62b509e">Laravelで日本語化</a>の記事で解説しています。


##デバッグバーの導入


##Authの設定(必要な場合)
こちらは<a href="https://qiita.com/nknk123/items/91392c46f5df33e77f11">LaravelでAuthを導入</a>の記事で解説しています。


##Laravel Mixの環境構築
こちらは<a href="https://qiita.com/nknk123/items/111f74b81d7463585930">Laravel Mixのインストール</a>の記事で解説しています。


##参考記事
><a href="https://qiita.com/yk2220s/items/dcbf54c6d1f33a0cb06f">[Laravel5.5] APP_KEY の行方を追う</a>
>
>