CakePHP3の環境構築 Amazon Linux編

CakePHP3の環境構築 Amazon Linux編

Category:雑記Tags:,
この記事のまとめ

症状1
composer で intl extension を要求されます。

対処1
yum で使用している PHP のバージョンにあった intl extension をインストールしました。

症状2
タイムゾーンの設定を行うと、'Unknown or incorrect time zone' の SQL エラーが発生します。

対処2
mysql の公式のページのアナウンス通り、ターミナルからコマンドを実行しました。

前回はXAMPP で開発環境を作成しましたが、今回はAWS 上の Amazon Linux での環境構築でのハマりポイントです。
使用した環境は Amazon Linux(最新版) + PHP 5.5 です。

再度要求スル。 intl extension ヲ有効ニセヨ

Cake のソース一式を AWS 上にアップロードして、 composer 先生を呼び出すと、、、

$ php composer.phar install
logo-composer-min
(前略)
Problem 1
  - cakephp/cakephp 3.2.1 requires ext-intl * -> the requested PHP extension intl is missing from your system.
  - cakephp/cakephp 3.2.1 requires ext-intl * -> the requested PHP extension intl is missing from your system.
  - Installation request for cakephp/cakephp 3.2.1 -> satisfiable by cakephp/cakephp[3.2.1].
(後略)

(‘A`) ヤッパリキタヨ。

 

intl extension のエラーの対処

intl extension を要求されるので、まずは yum コマンドで環境にあった intl extension を探します。

$ sudo yum search intl
Loaded plugins: priorities, update-motd, upgrade-helper
566 packages excluded due to repository priority protections
========================================== N/S matched: intl ===========================================
intltool.noarch : Utility for internationalizing various kinds of data files
perl-libintl.x86_64 : Internationalization library for Perl, compatible with gettext
php-intl.x86_64 : Internationalization extension for PHP applications
php54-intl.x86_64 : Internationalization extension for PHP applications
php55-intl.x86_64 : Internationalization extension for PHP applications
php56-intl.x86_64 : Internationalization extension for PHP applications

  Name and summary matches only, use "search all" for everything.

私はPHP 5.5 を使っているので、 php55-intl をインストールしました。

$ sudo yum install php55-intl

php.ini の編集は不要です。
これで composer 先生から怒られなくなります。
(‘A`) XAMPP ヨリ楽ダネ。

Error: SQLSTATE[HY000]: General error: 1298 Unknown or incorrect time zone: ‘Asia/Tokyo’

上記設定をした後にCakePHPにWebアクセスすると、

logo-mysql

Error: SQLSTATE[HY000]: General error: 1298 Unknown or incorrect time zone: ‘Asia/Tokyo’

(‘A`) ココデモ出タヨ。
案の定タイムゾーンでエラーが発生しました。

time zone のエラーの対処

今回は公式のページのアナウンス通りターミナルからコマンド
を実行することで対応完了です。
(‘A`) コレモXAMPPヨリ楽ダネ。

mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root mysql -p

以上で Amazon Linux上 で Cake が動作するようになりました。

(‘A`) 公開環境モデキタヨ。

スポンサーリンク

コメント (0)

コメントをどうぞ

注意プライバシーポリシーに同意の上で送信ください。

注意お名前は公開されます。
補足メールアドレスは公開されません。

関連記事