アプリは結構作成していますが、サーバーサイドはたまにしか作業しないためつい忘れてしまい、、、
あらためてメモすることにしました。
今の主流としてはcomposerを利用して管理するようです。
1.インストールディレクトリの作成
$ cd ~/
$ mkdir local
$ mkdir local/src
2.icuライブラリのインストール
icuが必要なようですが、入れないインストール方法もあるようです。
$ cd ~/local/src
$ wget http://download.icu-project.org/files/icu4c/58.2/icu4c-58_2-src.tgz
$ tar zxvf icu4c-58_2-src.tgz
$ cd icu/source
$ ./configure --prefix=$HOME/local
$ gmake
$ gmake install
3.intlのインストール
defaultの部分はさくらのphpのバージョンで大丈夫です。
$ cd ~/local/src
$ wget http://pecl.php.net/get/intl-3.0.0.tgz
$ tar zxvf intl-3.0.0.tgz
$ cd intl-3.0.0
$ phpize
$ ./configure --prefix=$HOME/local --with-icu-dir=$HOME/local --with-php-config=/usr/local/php/default/bin/php-config
$ make
4.modulesのコピー
$ cd ~/
$ mkdir modules
$ mkdir modules/php
$ mkdir modules/php/extensions
$ cd modules/php/extensions
$ cp ~/local/src/intl-3.0.0/modules/intl.so .
5.php.ini設定
直接でもよいし、さくらの管理画面でphp.iniの設定を記載します。
extension_dir = /home/USERNAME/modules/php/extensions
extension = intl.so
6.phpのオプションをエイリアスに設定
オプションを記載するのは面倒なのでaliasに設定します。編集したらsourceでアプデ。
$ cd ~/
$ vi .cshrc
alias php php -c /home/USERNAME/www/php.ini
7.composerのインストール
ハッシュはバージョンによって?違いそうなので、https://getcomposer.org/download/でコピペしましょう。
$ cd ~/
$ mkdir composer
$ cd composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
8.プロジェクト作成
プロジェクトフォルダを作成して、プロジェクトを作成します。このときcakephpもインストールされます。
$ cd ~/
$ mkdir project
$ cd project
$ cp ~/composer/composer.phar .
$ php composer.phar create-project --prefer-dist cakephp/app PROJECT_NAME
9.公開されるwebrootは別の場所に
公開されているwwwの下にプロジェクトのwebrootのリンクをはります。
ln -s で問題なさそうです。パーミッションはいろいろ後から考えます。