【Laravel】ページが見つかりません

# 原因
「environment_name.php」をみにいく設定になっているのに、「environment_name.php」が存在していなかった（いろいろミスって消しちゃったときに消えちゃったのかな…）
ほんとはテスト環境を立ち上げたいのに、本番環境にいってしまってたみたい？

```php:source/bootstrap/start.php
|--------------------------------------------------------------------------
| Detect The Application Environment
|--------------------------------------------------------------------------
|
| Laravel takes a dead simple approach to your application environments
| so you can just specify a machine name for the host that matches a
| given environment, then we will automatically detect it for you.
|
*/

$env = $app->detectEnvironment(function () {
	$environmentNamePath = __DIR__ . '/../.environment_name.php';
	if (file_exists($environmentNamePath)) {
		return include($environmentNamePath);
	} else {
		if (in_array(gethostname(), ['vagrant-ubuntu-trusty', 'user-VirtualBox', 'vagrant-centos65.vagrantup.com','Yuji-MBP', 'kadomain8', 'kado-dynabook', 'a-pc-001.local', 'www.printmark.jp', 'king0040-no-iMac.local'])) {
			return 'local';
		}

		return 'production';
	}
});
```

# 解決方法
新規作成
```php:source/.environment_name.php
<?php return 'local';
```

## 試したこと：ネットワークの疎通を確認
```sh:構文
$ping　hostname/IP_addr（通信相手）
```
```sh:例
# www.google.co.jpに対して検査用パケットを送信する
$ping　www.google.co.jp
# IPアドレス192.168.2.1に対して検査用パケットを送信する
$ping　192.168.2.1
```

## 試したこと：ネットワークの経路を調査
```sh:構文（Linux）
$traceroute　対象ホスト（ホスト名またはIPアドレス）
```
```sh:例
# google.comまでの経路情報を取得
$traceroute	google.com
```

## 試したこと：ネットワーク環境の確認
```sh:例
# 受送信のエラー数が確認できる
$ifconfig
```

https://qiita.com/pe-ta/items/aff8db72530c6baa11b2


## 試したこと：Docker起動・再起動
- -d オプション
    - デタッチド・モード: バックグラウンドでコンテナを実行し、新しいコンテナ名を表示
```sh
$ docker-compose down && docker-compose up -d
Stopping kp-proxy ... done
Stopping kp-app   ... done
Removing kp-proxy ... done
Removing kp-app   ... done
Removing network develop_default
Network shared-network is external, skipping
Creating network "develop_default" with the default driver
Creating kp-app ... 
Creating kp-app ... done
Creating kp-proxy ... 
Creating kp-proxy ... done
```

起動中のコンテナの一覧を表示
```sh
$ docker ps
CONTAINER ID   IMAGE              COMMAND                  CREATED       STATUS             PORTS                              NAMES
bbb3a065e28d   develop_kp-proxy   "nginx -g 'daemon of…"   2 days ago    Up 43 minutes      0.0.0.0:8082->80/tcp               kp-proxy
7102ca7beced   develop_kp-app     "php-fpm5.6 --nodaem…"   2 days ago    Up 43 minutes                                         kp-app
d882ad7ed868   localcart_nginx    "nginx -g 'daemon of…"   3 weeks ago   Up About an hour   0.0.0.0:8888->80/tcp               cart_nginx
ae8c7dc7f60f   localcart_cart     "docker-php-entrypoi…"   3 weeks ago   Up About an hour   9000/tcp                           cart_php_fpm73
2dd067fe27e5   redis:latest       "docker-entrypoint.s…"   3 weeks ago   Up 43 minutes      6379/tcp, 0.0.0.0:6380->6380/tcp   cart-redis
```
実行中のコンテナ内でコマンドを実行
- -iオプション
    - 指定したコマンドを実行する際、コンテナの標準入力をDockerホストの標準入力と接続する
- -tオプション
    - コンテナ内で疑似的な仮想端末を割り当てて、Dockerホストの標準出力と接続する

```sh:使い方
docker exec [オプション] CONTAINER COMMAND [ARG...]
```
```sh:実行例
$ docker exec -it bbb3a065e28d /bin/sh
/ # cleaer
/bin/sh: cleaer: not found
/ # cd /vw
```
コンテナを一覧表示
```sh
$ docker ps
```
実行中のコンテナ内でコマンドを実行
(Docker DesktopのGUIからコンテナ内に入るのを、コマンドだけで実行している)
```sh
$ docker exec -it ba35b6b95fe0 /bin/sh
# cd /usr/local/bin
# ls | grep wkhtml
wkhtmltoimage
wkhtmltopdf
```

## 試したこと：ログの確認（Laravel）
- path要素から、どこにログを出力する設定になっているか確認
```php:logging.php
    'channels' => [
        'single' => [
            'driver' => 'single',
            'path' => storage_path('logs/laravel.log'),
            'level' => 'debug',
            'tap' => [App\Logging\SampleTap::class],
        ],
```
- エクスプローラーを開き、ログを確認する
```sh
$ explorer
```
自分のいるディレクトリを開く場合
```sh
$ explorer .
```

## 試したこと：ログの確認（Docker）
PHP,nginxそれぞれのコンテナのCLIをひらき、ログをみる
→ログがでていれば、そこまで動いているということ

- ログ出力確認
    - --follow , -fオプション
        - 出力をフォローし続ける（表示し続ける）
        - 出力されるログを確認しながら作業をしたい場合に使用
        - リアルタイムにログを出力することができる
```sh
docker logs -f <ContainerName>
```
こっちでもみれる
※ただし、アクセスログとエラーログ を切り分けることができない
```sh
docker-compose logs -f <ContainerName>
```

## 試してみたいこと：ログの確認（php）
```sh
error_log()
```

## おまけメモ
```sh
new-king >nginx - error.log
```
```sh
develop>nginx>logs>error.log
storage>logs
```

# 個人的課題

ながれ：Laravel→nginx→PHP

この変がわからない！！

ブラウザ→nginx（Webサーバー）→Laravel→Nginx→ブラウザ？