いまさらCakePHP2をインストールしてみる

# 経緯
執筆時点で、3.x系が最新だったが、社内が2.xをまだ使っていた。
勉強の為に、composerを使って環境構築しようとしたら、3.xしかインストールできなかった。
2.xのインストール方法が分からなかったので、備忘録の為に書き残す。

# 前提
||Name|Version|Etc|
|:----:|:----:|:----:|:----:|
|OS|MacOS|10.12.6||
|IDE|NetBeans|8.2||

# インストール
結論から言ってしまえば、下記のページに飛んで、ソースのzipを展開するだけです。
https://github.com/cakephp/cakephp

##[Branchから2.x]をクリック
<img width="1109" alt="cakephp_cakephp__CakePHP__The_Rapid_Development_Framework_for_PHP_-_Official_Repository.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/5f41f67e-bd01-6ac4-1a13-0d9e7ca50047.png">

##[Clone or download]をクリック
<img width="1043" alt="cakephp_cakephp_at_2_x.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/129b7517-14d3-fb93-45c7-bb6b17c1c775.png">

##[Download ZIP]をクリック
<img width="353" alt="cakephp_cakephp_at_2_x.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/b3da7987-d2e7-3339-8a62-8ddbf716a917.png">

あとは実行サーバーのドキュメントルートに解凍したフォルダ丸ごと配置すればOK

# NetBeansにプロジェクト追加
##NetBeansを開いて、プロジェクトの新規作成をクリック
<img width="290" alt="Menubar_と_Ajax_CakePHP3_-_NetBeans_IDE_8_2_と_「_CakePHP2_x_今更CakePHP2_xをインストールする」を編集_-_Qiita.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/6784c403-2b22-3ab7-3500-2d814cb3b889.png">

##既存のソースを使用するPHPアプリケーション選択
<img width="829" alt="新規プロジェクト_と_Ajax_CakePHP3_-_NetBeans_IDE_8_2.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/7fce166b-8311-c3ee-8c8c-be4b02d7da16.png">

##ソースフォルダ選択
ソースフォルダの参照をクリックして、落としてきたcakephp-2.xのフォルダを選択
<img width="1291" alt="新規_既存のソースを使用するPHPプロジェクト_と_プロジェクト・フォルダを選択_と_Ajax_CakePHP3_-_NetBeans_IDE_8_2.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/1f6a6984-f339-4d4d-0385-1f0d7849cedc.png">

##PHPバージョン選択
Cake2.xがPHP7.0に対応していなかった気がするので5.6で。次へ
<img width="721" alt="新規_既存のソースを使用するPHPプロジェクト_と_Ajax_CakePHP3_-_NetBeans_IDE_8_2.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/f3e42892-f39a-6aaa-5e25-eda8311722b1.png">

##実行方法とプロジェクトURLの指定
XAMPPとかMAMPをローカルマシンに入れて実行する場合は基本そのままで。終了。
<img width="726" alt="新規_既存のソースを使用するPHPプロジェクト.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/b1b1cc08-046c-e362-d9bb-05544e59b27f.png">

#実行
##NetBeansからプロジェクト実行
NetBeansにプロジェクトに追加できたので、Webサーバー(XAMPP,MAMP,Apache等々)起動後に実行してみる
<img width="899" alt="cakephp-2_x_-_NetBeans_IDE_8_2.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/310135c5-3295-8cab-a677-eb910c1bab11.png">

##Security.saltとSecurity.cipherSeedの設定
###Cakeのトップが開けたら、警告が出ている
<img width="1319" alt="CakePHP__the_rapid_development_php_framework__Home.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/c87d5dfd-3b65-9f48-6c11-4f81a189b3da.png">

###core.phpを開いて編集
下記の部分の第二引数の英数字を適当な英数字の羅列に変えてやります。
<img width="893" alt="core_php.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/71807ec0-c0fa-1476-515e-f40e1afde397.png">

###読み込み直し
警告が消えているのでOK
<img width="1323" alt="CakePHP__the_rapid_development_php_framework__Home.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/69509779-8eb7-5a5d-59a7-2c361fa8b0f1.png">

## database.phpの設定
### 警告の確認
database.phpっていうファイルがないと怒られる。
<img width="1324" alt="CakePHP__the_rapid_development_php_framework__Home.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/44ff6021-4688-a8ee-f7f8-1f9dd30c29b4.png">

###database.phpの配置
app/Configの中にdatabase.php.defaultというファイルがある。
こいつをコピーして「default.php」という名前にリネーム。
<img width="242" alt="cakephp-2_x_-_NetBeans_IDE_8_2.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/9020fc85-6aa4-7d88-976a-1ff78a77af06.png">

###database.phpの編集
login、password、databaseを実際に使用するものに合わせて変えてやります。
MySQL以外のDBを使う場合には、datasourceも変えてやる必要がある。
<img width="970" alt="database_php.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/f9b916cb-eb7c-c99c-8e0b-a664ff7502d0.png">

###再読み込みして確認
警告が消えました。
これでCakePHP2.xを使って開発できる状態になりました。
<img width="1320" alt="CakePHP__the_rapid_development_php_framework__Home.png" src="https://qiita-image-store.s3.amazonaws.com/0/187703/fde5bb78-7f41-2b71-026e-4a643194e21b.png">

# 終わりに
こんな感じで2.xが使える状態になりました。
~~また今度CakePHP2で学んだこと等記事にしたいと思います。~~

[2018/02/06 追記]
まとめ直した。