[PHP] CakePHPをCentOSにインストールする詳細手順まとめ
こんにちわ。上本です。
春先の花粉にやられて、鼻水がズルズルと止まりません。
さて、今回はPHPの3大フレームワークであるCakePHPのインストール方法をご紹介します。
CakePHPって何がいいかって、インストールが簡単なところです!
他のフレームワークと違ってファイルをアップすれば動きますからね~
時間にしてざっと数十分程度。ではいきましょう!
※本記事ではドメインの代わりにローカルサーバのIPアドレス(192.168.11.200)を使用しています。
実際の設定では、ご自身のドメインやサーバのIPアドレスに置き換えてください。
環境について
今回CakePHPをインストールする環境情報です。
OS:Linux CentOS release 6.6 (Final)
Webサーバ:Apache/2.2.15 (Unix)
言語:PHP 5.4.38(cli) (built: Feb 19 2015 18:03:54)
フレームワーク:CakePHP 2.6.2(github最新バージョン 2015/3月現在)
CakePHPのダウンロード
まずは、LinuxにログインしてgitコマンドでCakePHPの本体をダウンロードします。
※今回はCentOS標準の公開ディレクトリにインストールします。
1 2 3 4 5 6 7 8 9 |
[root@localhost ~]# cd /var/www //公開親ディレクトリに移動 [root@localhost www]# git clone https://github.com/cakephp/cakephp.git Initialized empty Git repository in /var/www/cakephp/.git/ remote: Counting objects: 285233, done. remote: Compressing objects: 100% (55/55), done. remote: Total 285233 (delta 17), reused 0 (delta 0), pack-reused 285178 Receiving objects: 100% (285233/285233), 67.43 MiB | 1.73 MiB/s, done. Resolving deltas: 100% (208734/208734), done. |
ついでにディレクトリ名もわかりやすいように変更しておきましょう。
1 2 3 4 |
[root@localhost www]# mv cakephp 192.168.11.200 [root@localhost www]# ls -l 合計 6596 drwxr-xr-x 7 root root 4096 3月 12 20:07 2015 192.168.11.200 |
「192.168.11.200」ディレクトリができていればOKです!
httpd.confの編集
CakePHP本体をLinuxサーバに用意できたら、次はApacheの公開設定を行います。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf #httpd.confの最下部に追記 #すでにバーチャルホストが有効な場合は不要 NameVirtualHost *:80 #192.168.11.200の公開設定 <VirtualHost *:80> DocumentRoot /var/www/192.168.11.200 ServerName 192.168.11.200 <Directory "/var/www/192.168.11.200"> AllowOverride All #.htaccessを有効にしておきます Options -Includes FollowSymLinks Order allow,deny Allow from all </Directory> </VirtualHost> |
設定が終わったら設定確認後、Apacheを再起動しましょう!
1 2 3 4 5 6 |
[root@localhost www]# /etc/init.d/httpd configtest Syntax OK //設定に問題がなければ「Syntax OK」と表示されます。 [root@localhost www]# /etc/init.d/httpd restart httpd を停止中: [ OK ] httpd を起動中: [ OK ] |
CakePHPを動かしてみる
ここまでできたら実際に現状のページを確認してみましょう!
!?
白い画面にエラー文字がつらつらと表示されました。
この段階で大きくエラーが2種類あります。
- php.iniのタイムゾーンが設定されていない
- キャッシュを書き込むためのアクセス権がない
というわけで対応しましょう。
タイムゾーンの設定
1 2 3 4 5 6 7 8 9 10 |
[root@localhost www]# vim /etc/php.ini ;878行目付近 [Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone ;date.timezone = ↓ date.timezone = Asia/Tokyo ;日本の場合 |
アクセス権の付与
1 2 3 4 |
[root@localhost www]# chown apache:apache -R 192.168.11.200 [root@axshia www]# ls -l 合計 7788 drwxr-xr-x 7 apache apache 4096 3月 12 20:07 2015 192.168.11.200 |
再確認
設定が完了したので、再度画面を確認しましょう!
それっぽい画面が出てきましたね。
この画面がCakePHPをインストールしたときに出る、初期画面です!
Security.salt、Security.cipherSeedの変更
画面を見てみると、赤い枠でいかにもエラーのような警告文が2箇所出力されています。
Notice (1024): Please change the value of ‘Security.salt’ in APP/Config/core.php to a salt value specific to your application. [CORE/Cake/Utility/Debugger.php, line 846]
Notice (1024): Please change the value of ‘Security.cipherSeed’ in APP/Config/core.php to a numeric (digits only) seed value specific to your application. [CORE/Cake/Utility/Debugger.php, line 850]
これらは、標準で設定されている各値を変更してくださいとあります。
実際のファイルの中身はこんな感じです。
1 2 3 4 5 6 7 8 9 10 11 |
# /var/www/192.168.11.200/app/Config/core.php /** * A random string used in security hashing methods. */ Configure::write('Security.salt', 'DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi'); /** * A random numeric string (digits only) used to encrypt/decrypt strings. */ Configure::write('Security.cipherSeed', '76859309657453542496749683645'); |
ちなみにそれぞれ何の役割をしているのかというと、
Security.salt:ハッシュキーを生成するときに使用される文字列(英数字)
Security.cipherSeed:暗号化と復号化で使用する文字列(数字のみ)
とありますので、標準設定のまま開発を進めると、セキュリティ的に問題があるので変更してしまいましょう。
変更箇所は「Security.salt」と「Security.cipherSeed」の値をランダムな文字列に書き換えてあげればOKです
書き換えた後は、ブラウザを更新してみましょう。
先ほどの「Security.salt」と「Security.cipherSeed」の警告が表示されなければ正しく設定されています!
まとめ
今回はCakePHPを最低限動作させるまでのインストール方法を紹介しました。
CakePHPは他フレームワークと比べ比較的簡単にインストールができますので、フレームワークを検討されている方などは、一度ご自身でインストールして触ってみてはいかがでしょうか。
他にもSymfonyやZendを筆頭に様々なPHPフレームワークがありますが、僕としてはぜひ一度触っていただきたいフレームワークかなと思います。