0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

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

Last updated at Posted at 2022-06-06

原因

「environment_name.php」をみにいく設定になっているのに、「environment_name.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';
	}
});

解決方法

新規作成

source/.environment_name.php
<?php return 'local';

試したこと:ネットワークの疎通を確認

構文
$ping hostname/IP_addr(通信相手)
# www.google.co.jpに対して検査用パケットを送信する
$ping www.google.co.jp
# IPアドレス192.168.2.1に対して検査用パケットを送信する
$ping 192.168.2.1

試したこと:ネットワークの経路を調査

構文(Linux)
$traceroute 対象ホスト(ホスト名またはIPアドレス)
# google.comまでの経路情報を取得
$traceroute	google.com

試したこと:ネットワーク環境の確認

# 受送信のエラー数が確認できる
$ifconfig

試したこと:Docker起動・再起動

  • -d オプション
    • デタッチド・モード: バックグラウンドでコンテナを実行し、新しいコンテナ名を表示
$ 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

起動中のコンテナの一覧を表示

$ 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ホストの標準出力と接続する
使い方
docker exec [オプション] CONTAINER COMMAND [ARG...]
実行例
$ docker exec -it bbb3a065e28d /bin/sh
/ # cleaer
/bin/sh: cleaer: not found
/ # cd /vw

コンテナを一覧表示

$ docker ps

実行中のコンテナ内でコマンドを実行
(Docker DesktopのGUIからコンテナ内に入るのを、コマンドだけで実行している)

$ docker exec -it ba35b6b95fe0 /bin/sh
# cd /usr/local/bin
# ls | grep wkhtml
wkhtmltoimage
wkhtmltopdf

試したこと:ログの確認(Laravel)

  • path要素から、どこにログを出力する設定になっているか確認
logging.php
    'channels' => [
        'single' => [
            'driver' => 'single',
            'path' => storage_path('logs/laravel.log'),
            'level' => 'debug',
            'tap' => [App\Logging\SampleTap::class],
        ],
  • エクスプローラーを開き、ログを確認する
$ explorer

自分のいるディレクトリを開く場合

$ explorer .

試したこと:ログの確認(Docker)

PHP,nginxそれぞれのコンテナのCLIをひらき、ログをみる
→ログがでていれば、そこまで動いているということ

  • ログ出力確認
    • --follow , -fオプション
      • 出力をフォローし続ける(表示し続ける)
      • 出力されるログを確認しながら作業をしたい場合に使用
      • リアルタイムにログを出力することができる
docker logs -f <ContainerName>

こっちでもみれる
※ただし、アクセスログとエラーログ を切り分けることができない

docker-compose logs -f <ContainerName>

試してみたいこと:ログの確認(php)

error_log()

おまけメモ

new-king >nginx - error.log
develop>nginx>logs>error.log
storage>logs

個人的課題

ながれ:Laravel→nginx→PHP

この変がわからない!!

ブラウザ→nginx(Webサーバー)→Laravel→Nginx→ブラウザ?

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?