phpmyadmin自動ログアウト時間


88

phpmyadminの自動ログアウト時間を変更するにはどうすればよいですか?

それは私にとって非常に低い1440秒後に自動的にログアウトします。オプションを変更したり、ログインリクエストを完全に削除したりするにはどうすればよいですか?

回答:


86

php.iniファイルを作成または編集し、次の変数値を設定します。

session.gc_maxlifetime = 1440

整数は秒単位です。500000秒は5.7日です。次に、Apacheを再起動します。


2
php.iniファイルを開いて、session.gc_maxlifetimeの値を増やしてください。
Ravinder Singh 2012

10
悪い答え、セキュリティの問題!
Sebastian Viereck 2014年

1
phpmyadmin config.inc.phpファイルの$ cfg ['LoginCookieValidity']を更新する必要がある場合もあります。
ホルヘオルピネル2014年

5
@ slaver113この場合、開発環境であるためセキュリティは問題ありませんが、本番環境では問題ではありません。私はこれが答えで言及されるのを見たいと思います。
Manuel

8
これは、PHPMyAdminのタイムアウトとは関係ありません。なぜそれが非常に投票されているのかわかりません。質問とは関係ありません。
felwithe 2016

112

php.iniを変更すると、サーバーで実行されているすべてのWebサイトのセッション期間が変更されます。PhpMyAdmin専用に変更するには、以下を開いconfig.inc.phpて追加します。

$sessionDuration = 60*60*24*7; // 60*60*24*7 = one week
ini_set('session.gc_maxlifetime', $sessionDuration);
$cfg['LoginCookieValidity'] = $sessionDuration;

21
localhost / phpmyadmin / setup /…に config.php変数を設定するためのUIがあるようです -ログインCookieの有効性を参照してください
psycho brm

このUI設定は少しわかりにくいですが、自動ログインの構成でパスワードを設定し、セッションの有効期限を設定するために機能します。賛成票。
アントニオマックス

1
すべてのCookieには「有効期限」の日付があるため、時間を無制限にすることは不可能ですが、非常に大きな数値を入力するだけで済みます。
Marcel Burkhard、2014

5
これが答えになるはずです。質問では、phpMyAdminを変更する方法を尋ねました。この答えは具体的にそれを解決します。

1
Cookieパスも変更する必要があります。gc_maxlifetimeが他のWebサイトに対して定義されている場合、gcはWebサイトを初めて呼び出すときにすべてのCookieを削除します。/etc/apache2/conf-available/phpmyadmin.confファイルに次の2行を追加できます:php_admin_value session.gc_maxlifetime 604800 + php_admin_value session.save_path / var / lib / phpmyadmin / tmp
fred727

96

PHPMyAdmin 4では、これはconfig.inc.phpファイルに表示されなくなりました。代わりに、ブラウザーでPHPMyAdminにアクセスしてください。設定リンクを表示するには、ローカルホストレベルにいることを確認してください。次に、[設定]> [機能]> [ログインCookieの有効性]の値を変更> [保存]を設定します

指示


このフィールドに入力できる文字数には制限があるようです。
Kohjah Breese 2014

1
UIの変更が機能しません。ログインCookieの有効性がいくら大きくても、ログアウトは速すぎます。
dani24

4
@ dani24、この通知を受け取りましたYour preferences will be saved for current session only. Storing them permanently requires phpMyAdmin configuration storage.か?このリンクをクリックすると、変更を永続的に保存する機能を有効にする手順が表示されます。
Parapluie 2017

phpMyAdminはこのエラーを表示します。Your PHP parameter session.gc_maxlifetime is lower than cookie validity configured in phpMyAdmin, because of this, your login will expire sooner than configured in phpMyAdmin.これと同様に、Ravinder Singhの回答を適用する必要があります。
アブラハムムルチャーノベンツァドン2017年

7
バージョン4.8.4では使用不可
Thanasis

11

phpmyadmin WebインターフェイスでCookie時間セッション機能を変更できます

Settings->Features->General->Login cookie validity

または

設定ファイルの「ログインCookieの有効性」を変更する場合は、PHPMyAdmin config.inc.phpのルートディレクトリにあるphpmMyAdmin設定ファイルを開きます(ルートディレクトリは通常/ etc / phpmyadmin /です)

config.inc.phpを見つけたら、以下の行を検索し、phpmyadminにタイムアウトさせたい秒数の値を設定します。

['LoginCookieValidity'] 

上記の行が見つからない場合は、次の行を追加してください。

$cfg['Servers'][$i]['LoginCookieValidity'] = <your_new_timeout>;

例えば:

$cfg['Servers'][$i]['LoginCookieValidity'] = 3600 * 3;

タイムアウトは、上記の例から3時間に設定されています。

session.gc_maxlifetimeセッションの有効性が制限される可能性があり、セッションが失われると、ログインCookieも無効になります。そのため、php.ini設定ファイルでsession.gc_maxlifetimeを設定する必要がある場合があります(ubuntuではファイルの場所は/ etc / php5 /apache2/php.iniです)。

session.gc_maxlifetime = 3600 * 3


LoginCookieValidityのphpMyAdminドキュメント

$ cfg ['LoginCookieValidity']

タイプ: 整数[秒数]
デフォルト値: 1440

ログインCookieの有効期間を定義します。PHP構成オプションsession.gc_maxlifetimeはセッションの有効性を制限する可能性があり、セッションが失われた場合、ログインCookieも無効になることに注意してください。したがって、session.gc_maxlifetimeを少なくとも$ cfg ['LoginCookieValidity']と同じ値に設定することをお勧めします。

注意:

  1. サーバーがクラッシュしてphpmyadminページを読み込めない場合は、/ var / log / apache2 / error.logでApacheログを確認してください。PHP Fatal error: Call to a member function get() on a non-object in /path/to/phpmyadmin/libraries/Header.class.php135行目に到達した場合は、を実行しchmod 644 config.inc.phpます。エラーを処理する必要があります。
  2. 警告が表示された場合Your PHP parameter session.gc_maxlifetime is lower that cookie validity configured in phpMyAdmin, because of this, your login will expire sooner than configured in phpMyAdmin.session.gc_maxlifetime 、上記のようにを変更してください。

5

ローカルインストールの場合のみ、ログインとタイムアウトを完全に削除できます。これが目的のようです。認証タイプを「config」に変更し、データベースのユーザー名とパスワードを構成ファイルに入力すると、自動的にログインします。に追加config.inc.php

$cfg['Servers'][$i]['verbose'] = '';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'username';
$cfg['Servers'][$i]['password'] = 'password';
$cfg['Servers'][$i]['AllowNoPassword'] = false;

もちろん、インターネット上のサーバーでこれを行うと、いくつかの生意気なハッピーがやって来て、喜んですべてのパスワードをダウンロードしてあなたのウェブサイトを削除します。これは、自分のラップトップでのみ実行される開発サーバー用です。

最近phpmyadminをカスタマイズする簡単な方法は、http://www.example.com/phpmyadmin/setup/にアクセスし、一度にすべての設定セクションを保存し、下部にある[保存]または[ダウンロード]をクリックし、生成されたファイルをルートphpmyadminディレクトリ、次にchmodします。ログインを許可する前にphpmyadminがこれをチェックするため、ローカルサーバーであっても書き込み権限をオフにする必要があります。


ほとんどの人があなたの意味を理解できるので、ファイル名は間違っています。大きな問題ではありません。それでも正しい名前はconfig.inc.php
デビッド

3

wampフォルダーのディレクトリ 'apps \ phpmyadmin4.5.2'を探し、config.inc.phpファイルを開きます。次に、この行を既存のコードの下に追加します。

'$cfg['LoginCookieValidity'] = 3600 * 10; //login cookie validity extended upto 10 hours'.

それで全部です...


1

Ubuntu 18.04で実行されているphpMyadmin 5.0.2の場合、ファイルを次のように編集しました。

  1. sudo nano /usr/share/phpmyadmin/libraries/classes/Config/Forms/User/FeaturesForm.php

  2. メソッドpublic static function getForms()を見つけ、LoginCookieValidityフィールドを追加しました

    public static function getForms()
    {
        $result = [
            'General' => [
                'VersionCheck',
                'NaturalOrder',
                'InitialSlidersState',
                'LoginCookieValidity', //Added this line if it missing
                ...........
          }
  3. ファイルを保存すると、ユーザーインターフェイスから値を変更できるようになります。

[設定->一般->機能->ログインCookieの有効性]


これをありがとう。私は上記の答えを見ていて、5.0.2のインストールに戻って、自分が失望していると思っていました。彼らがUIを削除した理由、特に、まだ有効にできる状態になっている場合はどうでしょうか?
ヘッドバンク

0

Server:localhost -> Settings -> Features -> General -> Login cookie validity


同じ回答がすでにかなり前に投稿されています(そして、説明と、あなたの回答に欠けているphpセッションのタイムアウトに関する情報)。
Marki555 2016

私は言及しませんでしたが、私は常にある種の質問には非常に単純な答えを好みます。
Pmpr 2016

1
はい。ただし、ログインCookieの有効性をphpのセッションの有効性よりも高い値に設定すると、機能しません。
Marki555 2016

私はそれを知りませんでした。有益なコメントをありがとう:)
Pmpr

-1

私はphpmyadmin 4.9.2を使用しています。LoginCookieValidityを設定してみますが、自動ログアウトします:( localhostを使用している場合は、https: //docs.phpmyadmin.net/en/latest/config.html#example-for-ip-address-limited-autologinを試すことができます

if ($_SERVER["REMOTE_ADDR"] == "127.0.0.1") {
    $cfg['Servers'][$i]['auth_type'] = 'config';
    $cfg['Servers'][$i]['user'] = 'root';
    $cfg['Servers'][$i]['password'] = 'yourpassword';
} else {
    $cfg['Servers'][$i]['auth_type'] = 'cookie';
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.