DEVELOPERS BLOGデベロッパーズブログ
- HOME >
- 加藤 正人のデベロッパーズブログ >
- XSERVER X10 に CakePHP 3.x をインストールする
加藤 正人のデベロッパーズブログ
- 氏名
- 加藤 正人
- 役職
- 多分SE
- 血液型
- 秘密
- 出没
- 美味しいもののあるところ
- 特色
- タヒチ大好き。ちょいメタボ。
- 2020/12/15
- CakePHP3 のリダイレクトがうまく行かない例
- 2020/11/12
- Apache Bench
- 2020/10/05
- PhpSpreadsheet でExcel ファイルを読み込む (CakePHP3)
先の記事のように、XSERVER の共用サーバーで PHP の intl 拡張のサポートが始まったので CakePHP 3.x が利用できるようになった。
インストールにはちょっとしたコツがあるので以下にメモしておく。
-
2016年08月06日現在の composer のインストール手順は CLI 版 php を前提としているが、XSERVER X10 の PHP 5.6 は FastCGI 版のため -r オプションは使えない (CLI 版は php5.3 の CLI 版が /usr/bin/php-cli として提供されているのみ; CakePHP 3.x には PHP 5.5.9 以降が必要)
-
同じく CLI 版でないことにより STDIN からの入力を利用できないため、composer が作成したフォルダのパーミッションをインタラクティブに設定する部分でエラーになる (Use of undefined constant STDIN - assumed 'STDIN')
このため、composer のサイトに記載されている php -r "..." を使用した方法は利用できない。回避方法は以下の通り。
-
SSH で XSERVER の当該サーバにログインする。
-
ドメイン名フォルダ直下 (当該ドメインの public_html が存在するフォルダ) に移動し、以下の sh コマンドを実行する。
以上でカレントフォルダに composer.phar が生成される。
-
続いて composer.phar で CakePHP 3 プロジェクトを生成するが、プロジェクトとして public_html を指定すると簡単。ただし、public_html フォルダ内はカラになっていないとエラーとなり何も書き込まれないので、.htaccess をバックアップした上で public_html 配下をカラにしておく。また FastCGI 版で STDIN の問題を回避するため yes コマンドを使用し次のように入力する。
composer は Warning: Composer should be invoked via the CLI version of PHP, not the cgi-fcgi SAPI (Composer は cgi-fcgi SAPI 版ではなく CLI 版 PHP で実行すべき) という警告を表示するが、public_html 配下に CakePHP 3.x がインストールされる。なお、この状態だと pulic_html 直下の .htaccess は CakePHP 3.x のための設定しか入っていないので、先ほどバックアップしておいた .htaccess の内容とマージして適切な設定となるようにする。
以上で XSERVER の共用サーバーに CakePHP 3.x をインストールできる。
また、CakePHP の更新もプロジェクトフォルダ (上の例では public_html) に移動し、composer update (または /usr/bin/php5.6 ../composer.phar update) を実行することで簡単に更新できる。(ただし .htaccess など Apache の設定が入っているファイル等はバックアップしておくことを推奨。)
関連エントリー
- 2020/12/15
- CakePHP3 のリダイレクトがうまく行かない例
- 2020/10/05
- PhpSpreadsheet でExcel ファイルを読み込む (CakePHP3)
- 2020/08/03
- CakePHP3 のユーザー定義ファインダーのオプション
- 2020/05/07
- CakePHP3 で JSON 応答のための定番処理
- 2020/04/02
- CakePHP3 でタイムゾーン変換
- 2020/02/01
- バージョンを指定して CakePHP をインストールする
- 2020/01/03
- CakePHP サイトの移転時の注意
- 2019/12/07
- CakePHP3 のアソシエーションで、紐づけ用フィールドを指定する
- 2019/11/07
- CakePHP3 のコマンドライン実行
- 2019/09/02
- CakePHP3 の Virtual Field と accessor (Getter)
- 2019/07/04
- CSRF token mismatch
- 2019/01/07
- CakePHP3 で "Could not send email: unknown"
- 2018/12/03
- CakePHP3 の JSON 出力でエラー
- 2018/10/01
- CakePHP3 のミューテータで書き換えたデータが保存されない件
- 2018/08/01
- CakePHP3.6.2 のタイムスタンプ調整 (XSERVER の場合)
- 2018/07/04
- CakePHP3 で DebugKit が表示されない
- 2018/05/01
- 最新版 composer.phar のインストール
- 2018/03/06
- PHP 7.x で CakePHP 3.x を使う
- 2017/11/10
- Remi's PHP5.6 と intl モジュール
- 2017/05/23
- X2 と CakePHP 3.x
- 2017/03/03
- CakePHP3 の便利機能
- 2017/02/20
- CakePHP3 と SQLite
- 2017/01/20
- CakePHP3 でテーブル不使用フォームのバリデーション
- 2016/12/10
- CakePHP3 のファインダーメソッド
- 2016/09/10
- CakePHP 3.x の accessor と mutator 【その2】
- 2016/09/03
- CakePHP 3.x の accessor と mutator
- 2016/04/09
- XSERVER で CakePHP 3.x が Fatal error
- 2015/09/12
- CakePHP 3.x インストールメモ
- 2015/07/25
- XSERVER と X2
- 2015/06/13
- Composer メモ
- 2015/05/01
- 共用サーバに MeCab をインストールする
2020/12/15
2020/11/12
2020/10/05
2020/09/11
2020/08/03