- 投稿日:2020-04-03T22:11:29+09:00
Laravelのページネーションについて
- 投稿日:2020-04-03T18:51:45+09:00
Windows+Docker+Laravelでの開発時に「There is no existing directory at "C:\........\storage\logs" and its not buildable: No such file or directory」が出る時の対処
環境
Windows10 pro
Docker for Windows
Laravel 7.x
ローカルのDockerでphp、nginxのコンテナを立てています。状況
/config/logging.phpの設定を変えた後、反映させるためにWindows側のコマンドプロンプトで「php artisan config:cache」を打ったら急に出るようになりました。
ネットで情報を探すと再度キャッシュを消すと直る等ありましたが、直らず..。解決した方法
Docker側phpのコンテナにCliで入り、そっちの方で上記コマンドを打つと解消されました。
しっかりと原因特定まではできてませんが、Windows側でやるとパスの解決がWindows仕様になってしまうとかですかね。余談
解決後、
Log::debug(storage_path());
でログに吐いたら正しいパスはこうなってました。[2020-04-03 09:58:48] local.DEBUG: /var/www/APP_NAME/storage
- 投稿日:2020-04-03T15:58:41+09:00
Azure App ServiceでLaravelアプリのDocument rootでハマった件
背景
Azureを練習しようとGithubに上げている簡単なLaravelアプリをデプロイしようと試みる。
とりあえずApp ServiceでPHPの環境を作成し、デプロイセンターからGithubよりデプロイ。問題発生
標準でDocument rootが/home/site/wwwrootになっているため、ソースをデプロイしてもうまくアクセスできず。(/home/site/wwwroot/publicを見てほしい)
Ubuntu環境のApacheで動いていることが分かったため、/etc/apache2/sites-available/にある000-default.confやdefault-ssl.confを見て「$APACHE_DOCUMENT_ROOT」を変えてみようとAzureのコンソール画面から『設定>構成>アプリケーション設定』で環境変数を設定してみるも、これも効かず。(SSHで入って環境変数↑をechoしてみると変更はちゃんと効いていたのに...)解決した方法
正攻法か分かりませんが、Laravelアプリのソースに「.htaccess」置いて回避しました。
Nginx+php-fpmの方に慣れていたのでこの方法に行きつくまでかなりかかりました...。<IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^.*$ /public/$1 [NC,L,QSA]