dockerのphpMyAdminにログインできない

アドオンのKatalon Recorderが原因でした。

概要

dockerコンテナのphpMyAdminでログインしようとしたら、エラーでログインできないよ。数日前はログインできたのに...

Failed to set session cookie. Maybe you are using HTTP instead of HTTPS to access phpMyAdmin.Code language: plaintext (plaintext)

ブラウザが、非SSLのクッキーを受け付けなくなったのかな?オレオレ証明書を設定しなきゃいけないのかな?

メインのwebアプリケーションはどう?http://localhost:1234/ のように、非SSLで、ポート指定でしょ。

ログインできたよ。非SSLの問題ではないみたいだね

他プロジェクトのphpMyAdminにはログインできるの?

他プロジェクトのphpMyAdminにも、やはりログインできないよ

別のブラウザで試してみた?

Ubuntu18の
FireFox 85
Google Grome 88
どちらもエラーだよ

試しにCookieを削除してみたら?

うん、変わらないね、エラーだよ

mysqlコマンドではログインできるの?

ログインできるね!パスワードやMySQLサーバは問題ないってことだね

別のPCからアクセスしてみたら?

macOSの
FireFox 85
Google Grome 88
どちらもログインできたよ!

phpMyAdminのバージョンは?

えーっと、dockerhubの4.9

ねんのため、最新バージョンを試してみたら?

最新の5.0にしてみたけど、同じエラーだよ。

https://hub.docker.com/r/phpmyadmin/phpmyadmin

原因

stackoverflowに次のコメントを見つけたけど

My solution was to disable (add an exception for my domain) to the "Privacy Badger" Firefox Extension.

私の解決策は「Privacy Badger」Firefox拡張機能を無効にすることでした。

phpmyadmin Failed to set session cookie. Maybe you are using HTTP instead of HTTPS 2018-04-13

あっ!最近、Katalon Recorder(カタロンレコーダー)をインストールしたんだった。

Katalon Recorderを無効にしてみるね

phpMyAdminにログインできたよ!

ところで、Katalon Recorderって何?

Selenium IDEのサードパーティ版っていえばいいのかな、本家にはなくなったスクリーンショット命令があるんだよ

Google Chrome用

Katalon Recorder (Selenium tests generator) - Chrome ウェブストア
Selenium IDE alternative to record and export Selenium scripts. With reports & screenshots. Fast & open-source.

FireFox用

Katalon Recorder | Automated Selenium Tests Genera – 🦊 Firefox (ja) 向け拡張機能を入手
Firefox 向け Katalon Recorder | Automated Selenium Tests Genera をダウンロード。Selenium IDE alternative to record and export Sele...

またstackoverflowに助けられたね

チェックリスト

phpMyAdminも含めて、ログインできない、うまく動かないけど原因がわからないときのチェックリスト。順不同。

別のブラウザ
別のPCのブラウザからアクセスして確認する
Cookieを削除してみる
シークレットモード
mysqlコマンドでログインできるか確認する
(パスワードが間違っている?)
dockerを再起動、build
最近インストールしたブラウザアドオンを無効にする
PC再起動
同じプロジェクトの別webアプリケーションで確認する
(非SSLが問題?)
ホスト側も80ポートにして、http://localhost/ でアクセスしてみる
(アドレスのポート指定が問題?)
localhostではなく、http://127.0.0.1:1234/ や http://127.0.0.1/ でアクセスしてみる
PCのIPアドレス、http://192.168.0.1:1234/ や http://192.168.0.1/ でアクセスしてみる
PCのホスト名、http://mypc-2016.local:1234/ や http://mypc-2016.local/ でアクセスしてみる
ngrokを利用して、https://xxxx.ngrok.io/ でアクセスしてみる
(非SSL、ホスト名、ポート指定が問題?)
他プロジェクトのphpMyAdminで確認する
最新のphpMyAdminで確認する
タイトルとURLをコピーしました