Phpmyadminのインストール後、「設定ファイルにはシークレットパスフレーズが必要です」というエラーが表示され続けます。パスフレーズを設定し、 https://serverfault.com/questions/291490/phpmyadmin-not-allowing-users-to-log-on に表示される指示にも従いましたが、そうではありません働くこと。私はAMIを使用しており、所有者と権限もチェックしています。助けてください。
これは役立つかもしれません https://wiki.archlinux.org/index.php/PhpMyAdmin#Add_blowfish_secret_passphrase
/ phpmyadminに最初にログインしたときにページの下部に次のエラーメッセージが表示された場合(以前に設定したMySQLユーザー名とパスワードを使用):
ERROR: The configuration file now needs a secret passphrase (blowfish_secret)
PhpMyAdminの設定ファイルにフグのパスワードを追加する必要があります。 /etc/webapps/phpmyadmin/config.inc.phpを編集して、ランダムなフグの「パスワード」を行に挿入します
$cfg['blowfish_secret'] = ; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
これは次のようになります。
$cfg['blowfish_secret'] = 'qtdRoGmbc9{8IZr323xYcSN]0s)r$9b_JUnb{~Xz'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
これはすべて、構成ファイルがすでに適切に作成されていることを前提としています。
cp config.sample.inc.php config.inc.php
設定ファイルに_$cfg['blowfish_secret']
_が設定されていると、エラーThe configuration file now needs a secret passphrase (blowfish_secret)
も発生しました。 CentOS v6を使用していて、yum
を使用してEPELリポジトリからPHPMyAdminをインストールしました。 PHPMyAdminをホストするようにnginxをセットアップし、PHPMyAdminパッケージ(デフォルト)がApacheで動作するようにセットアップされています。構成ファイルは_/etc/phpMyAdmin/config.inc.php
_にあり(_CONFIG_DIR
_で_libraries/vendor_config.php
_を確認して、構成ファイルの場所を見つけることができます)、気付いた場合、ユーザーはrootで、グループはApache
(ファイルとディレクトリ)。これにより、PHPMyAdminが構成ファイルを読み取ることができなくなります。この問題を解決するには、chown
を使用して、グループをWebサーバーを実行しているグループに変更します(私の場合、グループはnginx
です)。ディレクトリと構成ファイルの両方の所有者を変更する必要があります(以下を参照)。
_chown -R root.nginx /etc/phpMyAdmin/
_
PHPMyAdminが更新されている場合は、これを再度行う必要があることに注意してください。また、SELinuxが有効になっている場合は、権限にさらに問題がある可能性があります。
持っていた
define('CONFIG_DIR', '/etc/phpmyadmin');
/usr/share/phpmyadmin/libraries/vendor_config.phpにあります。
そのはず:
define('CONFIG_DIR', '/etc/phpmyadmin/');
(スラッシュを追加)
最新バージョンのphpmyadminは、インストール後に設定ファイルを作成しません。使用可能な設定ファイルの例と、フォルダツリーのより深い実際のデフォルト設定ファイルがあります。
フグのシークレットの長さは正確に32文字でなければならないことに注意してください。そうしないと適用されません。
サンプルファイルをコピーして、デフォルトを上書きする実際に使用されるファイルを作成します。以下に示すディレクトリは例にすぎないため、適用されるphpmyadminインストールのディレクトリ/パスを使用してください。
cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
ファイルの先頭は、設定する必要があるblowfish変数です。変数の値にランダムな32文字を追加し、ファイルを保存します。
$cfg['blowfish_secret'] = 'KLS$vbc91Lkja$vc@opGbxA278EWopdc';
このスレッドで32文字のルールについて言及している人は誰も読みませんでした。おそらくそれがOPの問題でした。
私の場合、リポジトリのバージョンがPHP 7.2。 /libraries/vendor_config.php。
行define('CONFIG_DIR', '/etc/phpmyadmin/');
の最後に_/
_がありませんでした。 libraries/classes/Config.phpを手動で編集してこれを見つけ、function load($source)
の最初にdie($source)
を実行しました。そこで、構成ソースが正しくないことがわかりました。
ここでファイルを編集した場合:/usr/share/phpmyadmin/config.inc.php
問題が解決しない場合、間違ったファイルを編集している可能性があります。 whereis phpmyadmin -l
を実行すると、サーバー上のphpmyadminの場所のリストが表示されます。
間違ったファイルを編集している可能性があると言ったのは、phpmyadminをvar/www/phpmyadmin
またはvar/www/html/phpmyadmin
にインストールした場合、ここでphpmyadmin/config.sample.inc.php
を編集する必要があるためです。
だからこれを試してください:
$ cd var/www/html/phpmyadmin
$ cp config.sample.inc.php config.inc.php
あなたの方法でこれを編集し、ログアウトしてphpmyadminにログインしてください。
Phpmyadminフォルダーに移動し、「lint.php」を検索して、= 'require_once' libraries/config.inc.php ';を設定します
それは間違いなくあなたの問題を解決します。
それがあなたの問題を解決するなら、私に感謝します。
次の手順を実行します:
1)/etc/httpd/conf.d/phpmyadmin.conf
に移動します
2)/usr/share/phpmyadmin
に移動し、conf.inc.php
を開きます
3)-のようなblowfish_secretの値を追加します
$cfg['blowfish_secret'] = 'mrgQxxk8C-y}U7ji2BO9o5jLf}Qhe-BI[~6SUa';/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
4)保存して終了します。
5)ブラウザのキャッシュをクリアする
6)次のURLでアクセスを試みます: http://yourserver.com/phpmyadmin/index.php
これを共有したいだけです。プット
$cfg['blowfish_secret'] = 'fill this up';
Phpmyadminフォルダーに移動し、lint.php
を検索します
そして設定
require_once 'common.inc.php';
Http(Webサーバー)グループのアクセス許可が実行可能かどうかを確認することに加えて、php.iniの 'open_basedir'エントリに、config.inc.phpが設定されている場合は、それが配置されているディレクトリが含まれていることを確認する価値があります。これでこの問題は解決しました。
私の場合、所有者/権限の問題でした。プライマリWebサイトの1つに/usr/share/phpmyadmin/
を指すように手動でシンボリックリンクを作成し、FQDNからphpMyAdminにアクセスできるようにしました https://myserver.mydomain.com/ changedphpmyadmin 代わりにIP経由でのみ。しかし、そうすることでWebユーザーも変わりました。これがデフォルトのドメインでない場合、IP経由のブラウジングはFQDN経由のブラウジングとは異なります。
したがって、私の場合、FQDNのWebユーザーは/var/lib/phpmyadmin/blowfish_secret.inc.php
を読み取ることができなかったため、このファイルの所有者をroot:www-datatoweb1:client1私の場合。次に、nginxをテストしてリロードします。
chown web1:client1 /var/lib/phpmyadmin/blowfish_secret.inc.php
nginx -t
systemctl reload nginx
大括弧内に32個の記号を含むパスワードを追加$ cfg ['blowfish_secret'] = ''; /usr/share/phpmyadmin/libraries/config.default.php内の別のファイルのために私を助けました
Debian 9 + ispconfigを使用して、手動でインストールされたphpmyadmin