スポンサーリンク

[Windows][CakePHP3] ローカル開発環境(XAMPP+Composer)作成メモ

Web開発

■前提
・いくつかのローカル環境が共存している
・instantWP
・MS SQLserver

■XAMPP(xampp-win32-5.6.15-1-VC11-installer)のインストール
・インストール先はCドライブ直下

・ポートが競合するので変更
C:\xampp\apache\conf\httpd.conf (ポート指定 Listen 80 → 83に変更)
C:\xampp\apache\conf\extra\httpd-ssl.conf(ポート指定 Listen 443→ 441に変更)

・アパッチは、localhost:83で動く。
・MySQLはデフォルトポートが3306なのでこのまま動く(ID:root Pass:なし)

・ちなみに、コマンドプロンプトからipconfigで調べた自分のPCのIPだとこうなる
localhost が 192.168.11.3だという事

■php.iniの変更()php.iniの編集 (intlの拡張機能設定)

フィアルの場所
C:\xampp\php¥php.ini
// セミコロンを削除

¥xampp¥php¥php.ini
;extension=php_intl.dll

// 追記もしくは変更
;;;;;;;;;;;;;;;;;;;
; Module Settings ;の部分
;;;;;;;;;;;;;;;;;;;

■C:¥xampp¥php¥php.ini
[intl]
intl.default_locale = ja_JP.UTF-8
intl.error_level = E_WARNING

[mbstring] セミコロン削除または変更
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone=Asia/Tokyo

■一応、セキュリティ設定をしておく
・ http://localhost/security/xamppsecurity.php にアクセス
・mysqlのrootパスワードと

■phpmyadmin

■コマンドプロンプトで、phpとMySQLのパスを指定する
▼今回のインストールのために一時的にパスを通す場合
[CMD]> PATH c:\xampp\php
[CMD]> PATH C:\xampp\mysql\bin

▼恒久的にXamppのPHP設定にパスを通す場合
・Windowsスタートメニュー → プログラムとファイルの検索
> sysdm.cpl を入力して検索

・タブ「詳細設定」 → 「環境変数」をクリック →「新規」をクリック
変数名 PATH
変数値 C:\xampp\php;C:\xampp\mysql\bin

■コンポーザーのサイトからWindows用のインストーラーをDL
・Composer-Setup( http://getcomposer.org )
・Xmapp内の「php.exe」のパスを指定してインストール時
 (c:\xampp\php\php.exe)

・プロクシは設定せずにインストール実行

※上手くインストールされない場合は、
PHPの置いてある場所(c:\xampp\php\php.exe)に
下記2つのファイルを直接配置する
1)composer.phar (公式からDL)
2)composer.bat (以下のソースを書いて上記と同じ場所に配置)
—————————-
@ECHO OFF
php “%~dp0composer.phar” %*
—————————-

■正しくインストールされ、パスが通ってると、バージョンが確認できる
[CMD]> php -v (phpのバージョンが表示される)
[CMD]> composer –version (composerのバージョンが表示される)

※パスが通ってなければ、実行ファイルがある場所に移動すればできる
[CMD]> cd c:\xampp\php
[CMD]> php -v
[CMD]> cd C:\xampp\mysql\bin
[CMD]> composer –version

■バージョン確認して、composer のバージョンアップしろと言われたら
[CMD]> composer self-update

■cakephpのインストール
・コマンドプロンプトの作業ディレクトリをXamppの公開ディレクトリに移動
[CMD]> C: (Cドライブに移動)
[CMD]> cd C:\xampp\htdocs

・コンポーザーを使ってcakephpをインストール
[CMD]> composer create-project –prefer-dist cakephp/app cake3_001 (好きな名前)

※XAMPPの作業ディレクトリで行う事! C:\xampp\htdocs
※このコマンドは時間がかかる。あせってCtrl+Cで終了しない事
※最後にパーミッションを聞かれるので、Y をいれてリターン

■インストール完了すると、ディレクトリができてる

■ブラウザから確認
・xamppを立ち上げ、アドレスバーに 「localhost:83/cake3_001」と入力

■DBの作成と接続
▼コマンドラインでmysqlにログイン
[CMD]> mysql -u root -p
[CMD]> EnterPassword 何も入力せずリターン(変更してればその値を入れる)

▼新しいDB cake3_001 を文字コードutf8でつくる
[SQL]> CREATE DATABASE cake3_001 CHARACTER SET utf8;
※プロジェクト名と同じ cake3_001 をDB名にする
※utf8はハイフンutf-8なし、
※指定できる文字セットの確認は

▼cakephp3のデフォルトMySQLユーザー(my_app/secret)を、MySQLに登録
[SQL]> GRANT ALL ON *.* TO my_app@’localhost’ IDENTIFIED BY ‘secret’ ;

→ユーザーの確認
[SQL]> exit (いったん抜ける)
[CMD]> mysql -u my_app -p
[CMD]> secret (パスワード入力求められる)
[CMD]> SELECT user,host,password FROM mysql.user;

▼C:\xampp\htdocs\cake3_001\config\app.php の設定変更
[207行付近] ‘Datasources’ => [
‘database’ => ‘cake3_001’,

→ブラウザで確認して接続を確認

■bakeコマンド
XAMPP使っているので、XAMPPフォルダの中にあるhtdocsフォルダにプロジェクトフォルダがある。
$cd/Applications/XAMPP/xamppfiles/htdocs/プロジェクト名/app/console
$php cake.php bake model all
$php cake.php bake controller all
$php cake.php bake view all
[CMD]>> cd C:\xampp\htdocs\cake3_002
[CMD]>> bin\cake bake
→「cake.bat」は、binフォルダの中にあるので、
作業フォルダをアプリTOPにしておき、bin\cake で実行する

■環境変数のPATHを (外すときはコマンドの置換を使う %変数名:置換前=置換後%)
[開発用:通す]set Path=%PATH%;C:\xampp\htdocs\cake3_003\bin
[開発用:削除]set Path=%PATH:;C:\xampp\htdocs\cake3_003\bin=%
[DotIns:通す]set Path=%PATH%;C:\xampp\htdocs\cake3_002\bin
[DotIns:削除]set Path=%PATH:;C:\xampp\htdocs\cake3_002\bin=%