2023.06.29前回の続きです。前回はIBMiのデータベースからデータを引っ張れることを確認しただけ。続いてGitリポジトリにあるLaravelのソースコードを取得して動くところまで。実質環境構築はこれで完成する。VirtualBoxとVagrantでMac開発環境を構築する1/2自宅でテレワークするのに、いちいち会社のPCにリモートして仕事をするのが奇妙なのでMac内に開発環境を作ろうと思います。巷ではDockerが主流というか、現時点で使っていないやつは無能以下のゴミ扱いらしいですね。D...qryheavy.com2021.02.04GitをインストールするGitが入ってないので入れる必要がある。CentOSでは標準リポジトリからはgitの古いバージョンしかyumインストールできないみたい。gitの本家本元のサイト、git.scmによると、CentOSの場合はサードパーティのiusから取得するように書いてある。iusのサイトを見ると、iusのsetup方法が書いてあったのでそれを行う。git224.x86_64これでGitの2.24.3がインストールされる。searchで調べた。gitとするとインストールできるパッケージでgitという文字が含まれるものが表示された。その中にはgit.x86_64git222.x86_64git224.x86_64の3つがあった。ソースコードの置き場を作るソースコードがローカル側(Mac)に無いとVSCodeなどのエディタで触れないので不便。それゆえ前回iAccessを導入した時のごとく、マウントされる/vagrantにソースコードを置くようにする。/vagrant[ディレクトリを作ってあげる。htdocsGitリポジトリからソースを取得する今さらながらリモートリポジトリは存在する体の話なので登録する。一から作るのなら別記事にしてあるのでそちらをご覧ください。リモート先のパスは私の環境なのでご自身のを入れてください。masterこれでソースコードがhtdocsの中に流れてくる。途中でyes/noやリモート先のパスワードを聞かれるので正しいものを入力する。シンボリックリンクを貼るやり方としてはドキュメントルートを/vagrant直下に変更するのではなくシンボリックリンクを貼ることで対応します。最初に/var/www/htmlの中身をクリアして、リンクを貼る。/var/www/htmlドキュメントルートを編集するLaravelのindexはpublic直下にあるのでそこを見るようにhttp.confを設定する。[保存して終了]:wq変更箇所はコピーの上、コメントアウトで残しておく方がベターオリジナルのdatabase.phpを持ってくるdatabase.phpはGit管理していないはずなのでリモートリポジトリから取得したソースコードから抜け落ちているはず。オリジナルのdatabase.phpをhtdocs/config内に入れて上げる。これはFinder操作でできるはず。これも以前LAMPで作った環境の続きゆえ、不明な場合はそちらの記事をご参照ください。ドキュメントルートのAllowOverrideをAllにする後はhttpd.confの設定を定着させるためにサーバを再起動すればいいが、これだけの設定だとトップページ(http://192.168.33.10)は表示できても、パスのあるルートにアクセスできない。こんなエラーが出ます。server.これはpublicディレクトリにある.htaccessが効いていないため。効かないかは、http.confの設定でAllowOverrideを設定していないから。デフォルトでは、/var/wwwもNoneで、/var/www/htmlもNoneなので、それをAllにしてあげるか、新たにpublicに対して指定する必要がある。All</Directory>[保存して終了]:wqhttpdを再起動するhttpd.confを編集したので、設定を適用させるためにhttpdサーバを再起動する。httpdブラウザで接続するこれでLaravelで作ったアプリの画面が表示されるはず。念のためGitの動作確認だけしておく複数でのGit操作は慣れていないので一応Pushの操作までしておく。masterこれでOKのはず。作った環境をパッケージにしておくDockerに移行することも見据えて勉強のために、作った環境をパッケージにして、それを元にBOXに追加する。package.boxボックスを元に環境を作る別PCに移植したとして一度作った環境を使いまわせるかを試してみる。up結果ブラウザでアクセスしたところちゃんと表示された。思ったよりうまくいった感じで安心。upをするとpublicディレクトリが見つからずhttpdの起動に失敗package.boxは仮想サーバのイメージとして保存しておいた方がいいかもですね。httpdやphpやiAccess等のドライバもなども含まれるので引っ越しや別社員に環境を作ってあげるのに便利。おまけ権限関係でエラーが起こることがあるので備忘録。ログ系のファイルにアクセルできなかったり、キャッシュが云々でうまくいかなかったり。storage/logs/laravel.logというファイルにアクセスできないstorage/framework/sessions直下に作られるセッション情報にアクセスできないキャッシュが悪さしている節があるなど。deniedはWindowsで環境を作ったときはchmodを一発行えばよかったが、Macの場合はその後何度もエラーが起きた。原因は不明だが、sessions直下に作られるセッションファイルが所有権vagrantの644で作られることが原因のよう。Apacheはapacheユーザーでセッションファイルにもアクセスしにいくので、644だと書き込みができずにエラーになるということみたい。セッションファイルは新しく生成されるたびに644で作られるので、chmodで777に変更したところで、同じ現象がなんども起きてしまう。解決方法ははっきりとは言えないが、Apacheをvagrantユーザーで動かすようにすれば起きなくなった。vagrantにするということ。Apacheの再起動、サーバーの再起動をしても同じ現象は起きず、他の機能も問題なく動いた。Laravelでユーザーの使用ログを取るユーザーにデータベースの内容を照会するシステムを作ってきたけど、ログを取らないと、誰がどんなメニューを使ったのか、このメニューは誰か使ってくれているのかが解らないので、ログを取るようにしたい。...IT関連WordPressサイトにBasic認証を追加WordPressサイトだけってわけじゃないけど、Basic認証を追加する方法。現在私は会社のIT部門でプログラムを書く仕事をやっていますが、約4年前は広島で営業補佐の仕事をやっていました。要するに事務職ですね。広島というと地方になるのですが、地方の仕事は過酷です。JavaScript基本私の記事はIBMi/AS400をベースにやっています。LaravalではPOST通信時にCSRFトークンを送らないといけないのはすでに知っている。パスを通すとは、パスを通す方法パスを通す方法だけを書こうと思ったけど、わかりやすくその意味も書こうと思います。説明が下手なのでむしろわかりにくいかも・・。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。コメントに返信があったらメールで通知する。中国産食材が安全か問い合わせてみた行ス―のお問い合わせに質問してみました。はじめに本ブログのメインテーマです。実際のところ髭を抜くのは大丈夫なのかもうかれこれ5年以上髭を抜いている私が髭抜きレビューです。鬼畜な打って覚える英単語アプリ登録不要の完全無料、世にも珍しい打ち込み式の英単語アプリです。アプリホーム検索トップサイドバータイトルとURLをコピーしました。