エラーと対応メモ2019/12/13技術ネタCakePHP2.xの環境構築が必要だったのでやりました。多少のハマりがあったので、念のため次回に備えてエラー等のハマった箇所と対応をメモします。ドキュメントこの記事を読んでいる人はだいたい今からCakePHP2.xの環境構築をしようとしている人だと思いますが、公式のドキュメントが整っているので、本記事のような有象無象のブログを漁る前にこっちを読んでから分からない部分をググるべきだと思います。書いといてなんですが。「CakePHP(バージョン不明)の既存システムの改修」という案件の依頼を受けて開発環境を構築gitからソース一式をそのままxamppのhtdocsにクローンそのままだと色々エラーを吐くので諸々調整やったことバージョンの確認バージョン情報はVERSION.txtというファイルに記載されています。メジャーバージョンごとにファイルの位置が異なるので、以下を参考にVERSION.txtを探し出して確認。Cake3系/vendor/cakephp/cakephp/VERSION.txtCake2系/lib/Cake/VERSION.txtCake1系/cake/VERSION.txt2.3.2でした(数字の存在感が無さすぎて、最初気付かずに「書いてないじゃん!」と悩んだ)。オリジナルをDLして初期状態を確認する正式な状態ではどうなっているのかを確認するため、ゼロからCakePHP2.3.2環境を立ち上げてみます。CakePHPの公式(https://cakephp.org/)では3.X系しか置いてないようで、2.X系以下はgithubから入手します。以下から目当てのCakePHP2.3.2を探し出してダウンロード。GitHub以下の記事など参考に、とりあえずまっさらのCakePHP2プロジェクトを立ち上げた。上記で立ち上げたcakeのフォルダと、gitからクローンしてきたフォルダを比較して確認。不足しているファイルがないか?.gitignoreを確認して、本来無視されるべきファイルが共有されていないか?今回はキャッシュファイルが共有されていてエラーになっていたので、ファイルを削除。memo.gitignoreは、指定したファイルやディレクトリをgitの管理対象外にすることができる。一時的にキャッシュされるファイルとか、OSで生成されるファイルとかは各々の開発環境の設定とかによって異なるので、.gitignoreに記載して無視する。今回は、他の開発者のキャッシュを含むファイルごとクローンしていたため、パスが通らずエラーを吐いていた。...上記のようなエラーが出たのでエラーメッセージでググって対応を調べる。「フルコントロール」の許可にチェックを入れるとパスが通った。公式ドキュメントのパーミッションの項目に該当する作業。サイトのルート環境に設定する現状ではhttp://localhost/cakeみたいなパスでアクセスするが、それだとうまく動作しない部分があったので以下を参考にhttp://localhost:8080とルートで表示できるようにすると正常に動作した(公式ドキュメントの設定以下の項目に該当する作業)。アライドアーキテクツのクリエイターブログ運用(Production)と同様に/app/webrootをルートに指定した。localhost余談よくある初心者向きのプログラム言語とは何ぞや論争において、自分は「開発環境の構築が不要or容易な言語でとりあえず動く体験をするのが良い派」なので、一方で存在する「開発環境の構築経験から学べる言語が良いよ派」には若干懐疑的でした。今回みたいなことをしていると、仕事でプログラミングをやっていく上では初めましての開発環境もなんかノリで構築出来るようにしておくのは必要だなという風にも感じるところです。きょうびCakePHP2.x系で開発する機会は少ないかもしれませんが、今回のように既存プロジェクトの案件であれば必要なこともあるのかなと思うので、本メモ書きが役に立つ機会があれば幸いです。新免祥太1988年岡山生まれ。外食企業のWEB・EC担当を経験したのち、2013年12月より「野良人(のらんど)」の屋号で独立しWEBデザイン・プログラミングなどWEBサイト制作の工程全般を請け負っています。お気軽にご相談ください。大阪府堺市を拠点にしていますが、全国のお客様とお仕事をさせて頂いております。お気軽にお問い合わせください。Reserved.野良人とは制作事例ブログお問い合わせ。