Laravel超初心者のweb担当者です。
現在、ローカル環境でxamppを使い、htdocs配下にLaravelのプロジェクトディレクトリがある状態です。
そのプロジェクトディクレトリはLaravelで作られた既存サイトのコピーで、
見た目を一部変え新しいサイトを制作することになりました。
しかし、通常viewディレクトリにあるはずのbladeファイルが別のディクレトリにあり、表示の方法が分かりません。
ディレクトリの設定方法・設定ファイルをご教授いただけますでしょうか?
ディクレトリ構成
├─app ├─bootstrap ├─config ├─database ├─public ├─resources ├─view index.blade.php 通常ここに置く? ├─routes ├─storage ├─tests ├─vendor index.blade.php これを表示したい
それらしき記述があるファイル routes/web.php
//public Route::pattern('index', 'index.html*');
※app/Http/Controllers内のphpファイルにはそれらしき記述が見当たりませんでした。
それらしき記述があるファイル config/view.php
<?php return [ /* |-------------------------------------------------------------------------- | View Storage Paths |-------------------------------------------------------------------------- | | Most templating systems load templates from disk. Here you may specify | an array of paths that should be checked for your views. Of course | the usual Laravel view path has already been registered for you. | */ 'paths' => [ resource_path('views'), realpath(__DIR__."/../../../".env('DOC_ROOT')) ], /* |-------------------------------------------------------------------------- | Compiled View Path |-------------------------------------------------------------------------- | | This option determines where all the compiled Blade templates will be | stored for your application. Typically, this is within the storage | directory. However, as usual, you are free to change this value. | */ 'compiled' => realpath(storage_path('framework/views')), ];
それらしき記述があるファイル .env
DOC_ROOT=xxxxxxxxxxxxx.jp/
>通常viewディレクトリにあるはずのbladeファイルが別のディクレトリにあり
そもそも、これはなぜでしょうか
views の下に移動すれば良くない?
>通常viewディレクトリにあるはずのbladeファイルが別のディクレトリにあり
そもそも、これはなぜでしょうか
→サーバにファイルを上げて公開する際にセキュリティの都合で変更したようです。当時担当者はいません。
views の下に移動すれば良くない?
→試しましたが表示されませんでした。
それで、表示するパスを設定するファイルがどこかにあるかもと思い質問させていただきました。
public配下 じゃないものは外からはアクセスできませんよ
そうなんですね。
ドキュメントルート、Webルートについてきちんとおさえてください。
例えば.envとかブラウザからアクセスされたら困るものはpublic配下にはおいてませんよね?
config/view.php の paths に記述されている realpath(__DIR__."/../../../".env('DOC_ROOT')) が効いてそうですね。そこで参照されているDOC_ROOT環境変数の値は、コピー元のプロジェクトでは .env ファイルなどで設定されているのでしょうか?
ドキュメントルート、Webルートについてきちんとおさえてください。
例えば.envとかブラウザからアクセスされたら困るものはpublic配下にはおいてませんよね?
→favicon robots.txt web.config .htaccess index.php です。問題はないと思います。
config/view.php の paths に記述されている realpath(__DIR__."/../../../".env('DOC_ROOT')) が効いてそうですね。そこで参照されているDOC_ROOT環境変数の値は、コピー元のプロジェクトでは .env ファイルなどで設定されているのでしょうか?
→上部記載します。
現状、ローカルなので、こちらをhtdocsプロジェクト内に変えればいいでしょうか?
また、基本的なことだと思いますが、
__DIR__. はプロジェクト直下のディレクトリを指しているということでしょうか?
質問ばかりですみません。
そこは…Laravel特有の話ではないのでPHPを…
そうですね。
ただの勉強不足でお恥ずかしい限りです。
ありがとうございました。
「Web職人のためのフレームワーク」と謳われてる通りです。
回答1件
あなたの回答
tips
プレビュー