EC-CUBE 4.0.0 を Web インストーラーからインストール していた時のことです。
「データベースの設定」画面で、不可解なエラーに遭遇しました。
* EC-CUBE チームが対応してくださり、最新の 4.0.1 では解消されています。どうもありがとうございます。
こういうこともあるのだな......と印象深かったため、備忘録として残します。
「 Malformed parameter "url". 」(不正な形式の URL パラメーター)というエラーが、「次へ進む」を押下した時に発生しました。
エラーメッセージから原因を推測することは困難でした。
ホスト名その他の項目に対して、正しいつもりの値を設定して、何度かリトライしましたが、エラーを解消することができませんでした。
原因は データーベースユーザーのパスワードに "#" が含まれていたこと でした。
"%" や "!" が含まれていても問題ありませんでした。
Github の Symfony/skeleton のイシュー に、
It is the # sign that is not recognized by PHP's parse_url() function as valid, this issue is not related to Symfony, but to Doctrine DBAL
というやり取りが残されています。
こちらが正しければ、EC-CUBE の不具合では無く、さかのぼって、
EC-CUBE -> Symfony -> Doctrine DBAL
に起因する事象だったのかもしれません。
EC-CUBE 4.0.0 のイシュー が起票され、対応 が行われています。
4.0.1 では "#" を含むパスワードを使用しても、インストールが成功するようになりました ☺️