phpMyAdminで「接続できません。設定が無効です。」のエラーが発生した

XAMPPをインストールしてから、MySQLとApacheを起動する。
ブラウザからhttp://localhost/phpmyadmin/にアクセスする。
そうしたところ、以下のエラー画面が発生した。
phpMyAdminのエラー画面

エラーメッセージは、以下の通り。
MySQL のメッセージ:接続できません。設定が無効です。
設定ファイルに定義されている管理ユーザ(controluser)での接続に失敗しました。
MySQL サーバに接続しようとしましたが拒否されました。config.inc.php のホスト、ユーザ名、パスワードが MySQL サーバの管理者から与えられた情報と一致するか確認してください。

phpMyAdminの設定ファイルconfig.inc.phpを見ると、controluserにpmaが設定されている。


/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '';

コマンドプロンプトからpmaユーザでMySQLに接続すると、パスワードなしでも接続ができる。


mysql -u pma

原因がわからず、検索を続けると、以下のサイトに回答があった。
https://teratail.com/questions/29659

config.inc.phpの設定を以下の様に修正して、再度phpAdminにアクセスすると、アクセスできた。

/* 修正前 */
/*$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['connect_type'] = 'tcp';*/
/* 修正後 */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'socket';

CakePHP3のインストール

以下のコマンドを実施して、testCakeという名前のCakePHP3プロジェクトを作成する。

composer self-update && composer create-project --prefer-dist cakephp/app testCake

インストールが終わったら、正常に動くか起動してみる。以下のコマンドを実行する。

bin\cake server

ブラウザから「http://localhost:8765/」にアクセスする。Get the Ovens Readyが表示されたので無事にCakePHP3がインストールできた。
CakePHPスタート画面

もしCakePHPのバージョンを指定してインストールしたい場合。
例)CakePHP3.3系をインストールしたい時の指定

composer self-update && composer create-project --prefer-dist cakephp/app:3.3.* testCake

CakePHP3のインストールしてみたらエラーになった

CakePHP3をインストールしてみる。

インストール対象はWindows8。前提として、XAMPPとComposerはインストール済み。

以下のコマンドをコマンドプロンプトから実施した(このコマンドはCakePHP3のインストールコマンドとしては間違っている)。


composer create-project

実施したところ、以下のエラーメッセージが表示された。


$composer create-project
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - cakephp/cakephp 3.3.9 requires ext-intl * -> the requested PHP extension intl is missing from your system.
    - cakephp/cakephp 3.3.8 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.7 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.6 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.5 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.4 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.3 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.2 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.11 requires ext-intl * -> the requested PHP extensionntl is missing from your system.
    - cakephp/cakephp 3.3.10 requires ext-intl * -> the requested PHP extensionntl is missing from your system.
    - cakephp/cakephp 3.3.1 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - cakephp/cakephp 3.3.0 requires ext-intl * -> the requested PHP extension itl is missing from your system.
    - Installation request for cakephp/cakephp ~3.3 -> satisfiable by cakephp/cakephp[3.3.0, 3.3.1, 3.3.10, 3.3.11, 3.3.2, 3.3.3, 3.3.4, 3.3.5, 3.3.6, 3.3.7, 3.3.8, 3.3.9].

  To enable extensions, verify that they are enabled in your .ini files:
    - C:\xampp\php\php.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

原因は、php.iniの「;extension=php_intl.dll」がコメントアウトになっているから。これのコメントを外せば解決する。
CakePHP3のインストールのシステム要件にもきちんと記載があった。
https://book.cakephp.org/3.0/ja/installation.html#id2

インストールしているXAMPPのバージョン確認

以前、XAMPPをインストールしたけど、どのバージョンか忘れてしまった。
なので、XAMPPのバージョンの調べ方を探してみた。

XAMPP Control PanelからApacheを起動する。
起動したあと、ブラウザからhttp://localhost/xamppにアクセスする。
この画面でXAMPPのバージョンが確認できるらしい。

しかし、表示されていなかった。
結局、XAMPPをインストールしたフォルダのREADMEファイルの中身を見ると、バージョンが書いてあった。

WindowsにComposerをインストールする。

WindowsにComposerをインストールする。

Composerのホームページ(https://getcomposer.org/)にアクセスする。

Downloadのリンクをクリックする。
exeファイルとコマンドラインのインストール2種類あるようなので、Composer-Setup.exeファイルをダウンロードする。
Composer-Setup.exeをダブルクリックする。
Composer Setupが立ち上がるのでNextをクリックする。
Setting Checkの画面でPHPがインストールされているかチェックが入る。Nextをクリックする。
Proxy Settingの画面は、Proxyを使わないのでNextをクリックする。
Ready to installの画面でInstallをクリックする。
Completing Composer Setupの画面が表示されると、インストールは完了。
コマンドプロンプトから以下を実行すると、インストールしたバージョンが確認できる。
> composer --version
Composer version 1.3.1