phpmyadminが1440秒後にログアウトする


134

私のローカル開発Ubuntuボックスでは、MySQLとphpmyadminを使用してデータベースを操作しています。

phpmyadminが1440秒間アイドル状態になると(24分)、セッションは期限切れになります。私は自分の場所を失い、ログインして最初からやり直す必要があります。

$cfg['LoginCookieValidity'] = 3600 * 9;内側を変えてみconfig.inc.phpましたが1440秒でタイムアウトします。

すべてを再起動し、ブラウザのキャッシュをクリアしました(Firefoxの履歴->最近の履歴をクリア->キャッシュ->すべて)。

増加したタイムアウトが有効にならない理由がわかりません。何が悪いのですか?


5
最初に頭に浮かぶのは、config.inc.phpを変更した後でWebサーバーを再起動しましたか?
0xmtn

はい、私はこのコマンドを実行しました:sudo service mysql restart
sandeep

2
この問題を解決した場合、解決策をここに回答として投稿できますか?;)
0xmtn 2013年

Ubuntu 18.04の場合、ファイル/usr/share/phpmyadmin/libraries/config.default.phpを編集しました。変更:$ cfg ['LoginCookieValidity'] = 1440
Ahmed Ismail

回答:


199

ブラウザでPHPMyAdminに移動します

設定>機能>ログインCookieの有効性の値を変更>保存ここに画像の説明を入力してください

:セッションごとにこれを行う必要があります。


5
これは、この問題の最も速く簡単な解決策です。それが答えになるはずです!!!
Pini Cheyni 2016年

14
恒久的な解決策ではありません。私はこれを試してみましたが、1〜2日後に再び1440秒にリセットされます。
Rolen Koh、2016

5
これは現在のセッションでのみ機能します。設定でもそうです。
Richard Duerr

4
php.ini設定の更新を忘れないでくださいsession.gc_maxlifetime = SAME_OR_BIGGER_VALUE_AS_PHPMYADMIN
Lukas Liesis

7
参考:最善の選択肢ではありません。現在のセッションにのみ保存
Abdulla Nilam '27 / 10/27

70

次の行を/config.inc.phpに追加します。

$cfg['LoginCookieValidity'] = 36000;

/setup/lib/index.lib.php

$cf->getValue('LoginCookieValidity') > 36000;

phpMyAdminサイト用の.htaccessファイルがまだない場合は作成し、次の行を追加してデフォルトのPHPセッションタイムアウトを上書きします。

php_value session.gc_maxlifetime 36000

メインのphp.iniファイルでこの値を変更することはお勧めしません。すべてのPHPサイトで途方もなく長いセッションタイムアウトが許可されるためです。

ソース:http : //www.sitekickr.com/blog/increase-phpmyadmin-timeout/


1
これに追加できる場合は、config.default.php行698を$ cfg ['LoginCookieValidity'] = 1440から変更します。$ cfg ['LoginCookieValidity'] = 36000;
mstation 2016年

1
最初の行をphpmyadmin/config.inc.php配置する代わりに、ディレクトリの新しいファイルにphpmyadmin/conf.d配置して、アップグレード時に上書きされないようにします
zelcon

5
次のコードをconfig.inc.phpファイル(通常は/ etc / phpmyadminディレクトリにあります)に追加して、gc_maxlifetimeを拡張することもできます。ini_set( 'session.gc_maxlifetime'、 '36000'); これにより、phpmyadminにローカライズされ、他のPHPスクリプトのガベージコレクション期間には影響しません。また、ドキュメントに基づいて、config.inc.phpファイルは動作を変更するために使用されることを意図しています-docs.phpmyadmin.net/en/latest/config.htmlを参照してください。したがって、アップグレードによってこのファイルが変更される心配はありません。
ReverseEMF 2016

1
私はこれを試してみましたが、ステップ2は必要ないようです。設定ファイルの変更と.htaccessの変更だけです。
アンディマーサー

Ubuntu 18.04の場合、ファイルは/usr/share/phpmyadmin/libraries/config.default.php
Ahmed Ismail

52

Cookie時間セッション機能は次の場所で変更できます。

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

私はここで答えを見つけました 。1440秒以内にアクティビティはありません。もう一度ログインしてください

編集:

このソリューションは現在のセッションでのみ機能し、永続的に変更するには次のようにします。

ルートのphpMyAdminディレクトリにあるconfig.inc.phpを開きます。

wampフォルダー:wamp \ apps \ phpmyadmin {version} \ config.inc.php

ubuntu:/ etc / phpmyadmin

この行を追加

$cfg['LoginCookieValidity'] = <your_timeout>;

$cfg['LoginCookieValidity'] = '144000';

9
session.gc_maxlifetimephp.iniをデフォルト値よりも高く変更する必要があります:1440も。
Mロスタミ2014

5
この回答は非常に不完全であり、トップの投票ゲッターではありません。設定を変更すると、次の警告が表示されます。「設定は現在のセッションでのみ保存されます。永続的に保存するには、phpMyAdmin構成のストレージが必要です。」
fivedogit

@fivedogit ここに私はこの回答に関してうまく機能しているより完全な回答を置きました。
Mojtaba Rezaeian 2015

9223372036854775806より大きい値を設定できないか、整数オーバーフローが発生することに注意してください。
egdavid、2015

23

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

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

または

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

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

$cfg['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 上記のように変更します。

16

phpmyadmin設定を変更するためのUIがあるようですApacheを起動して次のリンクをクリックしてください

http://localhost/phpmyadmin/setup/index.php?page=form&formset=Features#tab_Security


2
このリンクはphpMyAdminのセットアップにつながりますインストールスクリプトを使用して動作中のアプリケーションの設定を変更することは、少し危険だと思いませんか。
trejder 2014年

13

phpMyAdmin settingsphp my.iniの設定を変更したり、.htaccessファイルを定義したりするために問題や要件なしにこれを使用する手順:

  1. 後藤あなたのphpMyAdminパスをインストールします(例:を/ usr / share / phpMyAdminは/私のcentos7上)と見つけるcreate_tables.sqlそのサブフォルダの1に(phpMyAdmin/sql/create_tables.sql私の4.4.9バージョンインチ)およびウェブブラウザから現在のphpMyAdminサイト上の全ファイルの内容を実行します。これにより、phpmyadminすべてのphpMyAdminオプションを永続的に保存できる名前のデータベースが作成されます。
  2. phpMyAdmin config.inc.php(centos7サーバーの/ etc / phpMyAdmin /にあります)でコメント行$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';を見つけてコメントを外します(phpMyAdminは、前の手順で生成したカスタムデータベースを使用します)。
  3. phpMyAdminWebブラウザからGotoに移動しServer >> Settings >> Features >> "Login Cookie Validity"、Pavnishによって説明されている画像のようにgoto し、目的の値を設定します。現在は機能しています。

参考資料Niccolas AnswerPhpMyAdmin Configuration StorageflashMarks Answer


これはphpMyAdmin 4.8.3では機能しません。単純な複合体を再び作ります。このアップデートの前に(私は4.4程度を使用していました)、ここで述べたように、サーバー>>設定>>機能を介してすべてが正常に機能しました。もう違います。config.inc.phpにはその行は含まれていません
luisfer

8

次に、「PHPパラメーターsession.gc_maxlifetimeがphpMyAdminで設定されたCookieの有効性よりも低いため、phpMyAdminで設定されたログインよりも早くログインが期限切れになる」という警告が表示されます。とにかく、phpのセッションが最初にタイムアウトするため、これは理にかなっています。したがって、/etc/php.iniを変更する必要があります。

session.gc_maxlifetime = 43200
Thats 12 hours in seconds. 

Apacheサーバーを再起動すれば完了です。

ソース:http : //birdchan.com/home/2011/06/06/phpmyadmin-timeout-after-1440-seconds/

これは私のために働きます!:)


7

mysqldではなく、apacheまたはhttpdを再起動する必要があります

sudo service httpd restart

または

sudo /etc/init.d/apache2 restart

これで、urコマンドを使用してapacheを再起動しました(つまり、sudo /etc/init.d/apache2 restart)が、phpmyadminは1440秒後にログアウトします。
サンドディープ

1
1440秒以内にアクティビティがありません。もう一度ログインしてください」というエラーが表示されますか、それとも単にログアウトしますか?ログアウトした場合session.gc_maxlifetime、あなたのでチェックしてください/etc/php.ini、これの価値は何ですか?
0xmtn

はい、このメッセージが表示されます:「1440秒以内にアクティビティがありません。もう一度ログインしてください」
sandeep

1
これは本当に奇妙です。/etc/php.iniにも設定session.gc_maxlifetime=3600*9して、ウェブサーバーを再起動して再試行できますか?デバッグを高速化するために、両方(session.gc_maxlifetimeおよび$cfg['LoginCookieValidity'])を50(秒)などの小さな値に設定してから、Webサーバーを再起動し、ブラウザーのキャッシュをクリアして、再試行してください。
0xmtn

サービス再起動すると、構成変更される方法を明確にできますか?
trejder 2014年

7

phpMyAdminセッションのタイムアウトを増やし、ルートのphpMyAdminディレクトリにあるconfig.inc.phpを開いて、この行を追加するだけです。

wampフォルダパス wamp \ apps \ phpmyadmin4.0.4 \ config.inc.phpから

$cfg['LoginCookieValidity'] = <your_timeout>;

$cfg['LoginCookieValidity'] = '1440';

注: Cookieの有効期間が短いことは、本番サーバーではなく、開発サーバーに適しています。


7

1)phpMyAdminにログインします。2)ホーム画面から[詳細設定]をクリックします(画面下部中央)。3)画面上部にある[機能]タブ/ボタンをクリックします。4)20日間、「ログインCookieの有効性」設定を1728000に設定します。5)適用します。

php xampp


6

恒久的にクッキーを設定するには、いくつかの手順に従う必要があります

Goto-> /etc/phpmyadmin/config.inc.phpファイル

このコードを追加

$cfg['LoginCookieValidity'] = <cookie expiration time in seconds > 

5

動作していません。PHPセッションはとにかく1440秒後に期限切れになります。

PHP.iniこれも変更:

session.gc_maxlifetime = 3600

http://www.phpmyadmin.net/documentation/Documentation.html#config

また、からPHP.ini

セッションファイルの保存にサブディレクトリオプションを使用している場合

; (session.save_pathは上記参照)、その後、ガベージコレクションを行いません

; 自動的に発生します。あなた自身のゴミをする必要があります

; シェルスクリプト、cronエントリ、またはその他の方法による収集。

; たとえば、次のスクリプトは次と同等です。

; session.gc_maxlifetimeを1440に設定(1440秒= 24分):

; cd / path / to / sessions; -cmin +24を見つける| xargs rm


5

wampicon / php / phpからのphp.inファイルの変更

session.gc_maxlifetime = 1440

session.gc_maxlifetime = 43200

4

パラメータ$cfg['LoginCookieValidity']config.inc.phpファイルで有効にならない場合は、次のsession.gc_maxlifetimeようにセミコロンを左側に配置して、php.iniファイルでを無効にしてみてください。

; After this number of seconds, stored data will be seen as 'garbage' and
; cleaned up by the garbage collection process.
; http://php.net/session.gc-maxlifetime
; session.gc_maxlifetime = 1440

または、両方$cfg['LoginCookieValidity']を無効にし、両方をsession.gc_maxlifetime = 1440コメントアウトしてみてください。

そうすると、アイドル状態のときにphpMyAdminがログアウトしなくなります。Windowsで動作します。ブラウザのキャッシュをクリアして、ウェブサーバーを再起動することを忘れないでください。


忘れそうだった。これらの変更を適用したら、ブラウザのキャッシュをクリアして、ウェブサーバーを再起動してください!歓声メイト。
アレックス

phpMyAdminの多くのサーバーに似た設定をに持っている場合、設定する必要があるの$cfg['Servers'][$i]['LoginCookieValidity']$cfg['LoginCookieValidity']、実際にはではなくconfig.inc.phpです。いいえ、$cfg['Servers'][$i]['LoginCookieValidity']この値はデフォルトで削除されているため、コメント化しても結果は得られません。したがって、このパラメーターをコメント化または削除すると、phpMyAdminはデフォルトの1440秒数にフォールバックするようです。
trejder 2014年

4

Cookieの有効期限を変更する手順

ステップ1:Phpmyadminの設定に移動

ステップ2:一般

ステップ3:ログインCookieの有効性

ステップ4:新しい値で1440秒のデフォルトのCookie有効期限を更新する


3
特定のセッションでのみ機能し、その後再び1440秒に設定されます
Naresh Dudhat

2

あなたが持っている場合はphpMyAdminの設定の保存設定を、設定はphpmyadmin.pma__userconfigテーブルを引き出すことになる、とあなたはconfig.inc.phpファイルで持っているものを上書きします。このテーブルでは、各MYSQLユーザーに異なるセットのphpmyadmin設定を割り当てることができます。


1

ここで提案されたすべての方法を試してもログアウトされ続けた後、Tampermonkey用の小さなusercsriptを作成することにしました。これは非常にシンプルで、PHPMyAdminのフットプリントの小さいスクリプトの1つにリクエストを1分ごとに送信します。これがコードです:

// ==UserScript==
// @name         PHPMyAdmin Keep Session Alive
// @namespace    https://www.bitwizeor.io/
// @version      0.1
// @description  No more nasty PHPMyAdmin session expiries
// @match        http://localhost/phpmyadmin/*
// ==/UserScript==

(function() {
    'use strict';
    console.log('PHPMyAdmin Keep Session Alive activated');
    var url;
    window.setInterval(function(){
        url = $("#serverinfo a:eq(1)").prop("href");
        url += '&ajax_request=true&ajax_page_request=true';
        $.getJSON(url);
        console.log('pinging ...');
    }, 60000);
})();

1

===メソッド1、httpログインあり===

[php.ini]
session.gc_maxlifetime = 86400

[config.inc.php]

$cfg['Servers'][$i]['auth_type']     = 'http';

=== Cookieログインを使用する方法2 ===

[php.ini]

session.gc_maxlifetime = 86400

[config.inc.php]

$cfg['Servers'][$i]['auth_type']     = 'cookie';

$cfg['Servers'][$i]['LoginCookieValidity'] = 86400;

$cfg['Servers'][$i]['pmadb']         = 'phpmyadmin';

$cfg['Servers'][$i]['controluser']   = 'phpmyadmin_pma';

$cfg['Servers'][$i]['controlpass']   = 'nigookike';

$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; // there's a lot of other table required for full functionality,
                                                                         // all others can be left out unconfig except this one

[mysql]
-import phpMyAdmin/sql/create_tables.sql

-grant PRIVILEGES to phpmyadmin_pma as below

db/table

phpmyadmin  ALL PRIVILEGES 

mysql/db    SELECT

mysql/host  SELECT

mysql/tables_priv   USAGE

mysql/user  USAGE


-clear all entries should old one exists

phpmyadmin/pma__userconfig

[webUI]

-clear broswer cookie

-as normal mysql user, access http://mysql/phpmyadmin , at the bottom of page:

    The phpMyAdmin configuration storage is not completely configured, some extended features have been deactivated. [Find out why.]

-near top of the page

    [Create missing phpMyAdmin configuration storage tables.]

-access http://mysql/phpmyadmin > settings > features > Login cookie validity > 86400 > [apply]

-check phpmyadmin/pma__userconfig contain new entries of aforemention mysql user

NB

  1. すべてのユーザーには独立した設定があり、[webUI]手順はユーザーごとに繰り返す必要があります

  2. 「phpMyAdmin構成ストレージが完全に構成されていない場合、一部の拡張機能が無効になっています。[理由を確認してください。]」

リンクがフロントページに表示されない、設定>機能>警告> phpMyAdmin設定のストレージテーブルがない> [更新]を数回クリックすると表示されます


このスニペットを適切にフォーマットしてください。それ以外の場合は、ほとんど判読できません。コンテンツは有望に見えますが。
イゴール

0

私は解決策を見つけ、しばらくの間それをうまく使っています。

このアドオンをFFブラウザーにインストールするだけです。


3
グレートの提案、全体の世界は、Firefoxを使用しているため。これに対する答えとしてマークされたために、あなたは、少なくとも1つの以上のブラウザ用アドオンを示唆している必要があります-ほとんどの普通の人は、このようなGoogleのクロムとしてまともなブラウザを使用するので...

5
そのような特定の些細な問題にアドオンを使用することは、私には圧倒されるようです。
saimiris_devel

1
これは質問の答えにはなりません。これは受け入れられる答えではありません。あなたは尋ねていました:「増加したタイムアウトが有効にならない理由がわかりません。何が悪いのですか?」
フィリップアンドレロリン

これは完全に無関係な答えです。ユーザーが「選択した回答」を変更する必要があるか、これを調査するためにモデレーターを関与させるか?
スター

0

それは私のために私のために働いた

  • をに変更し$cfg['LoginCookieValidity']まし (phpmyadmin folder)/libraries/config.default.php999999999

  • php.iniphpmyadmin が使用するを確認しましたphp5 -i | grep php.ini

  • php.inigrepコマンドの出力からパスを取得したファイルに移動し、session.gc_maxlifetime値をに変更しました999999999

  • サーバーを再起動しました。私の場合はそうだったsudo service apache2 restart

できました。phpmyadminにログインし、[設定]-> [機能]-> [全般]-> [ログインCookieの有効性]でCookieの有効性を確認しました。だった999999999。また、「PHPパラメーターsession.gc_maxlifetimeがCookieの有効性よりも低い...」という警告もありませんでした。phpmyadminにログインした後、php.iniファイルを変更する前に警告が表示されました。

phpmyadminで使用されているphpのバージョンを確認します。phpmyadminが使用するphpのiniファイルを変更する必要があります。私はphp5とphp(ie 7)の両方をインストールしています。しかし、私のphpmyadminはphp5を使用しています。そのため、php5のiniファイルを検索する必要がありました。


0

私はこれが古い投稿であることを知っていますが、私が読んだすべての解決策を試してみましたが、このページの解決策も役に立ちませんでした。

Ubuntu 17.10を実行しています。

/etc/phpmyadmin/config.inc.phpをアーカイブし、そのコンテンツを/usr/share/phpmyadmin/config.sample.inc.phpのコンテンツに置き換えました。

そして私は・・・それから私は

 1) Enabled (uncommented) all the options under "Storage database and tables"; 
 2) Included "ini_set('session.gc_maxlifetime', 86400);" underneath the uncommented items; and 
 3) Provided a 32 character sequence for the $cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */, which is above the uncommented items.

ファイルを保存してphpMyAdminを再起動しました。

サーバー:localhost->設定->機能を選択し、「ログインCookieの有効期間」の値を86400(24時間)に変更しました。デフォルト以外の値を指定すると、このオプションの背景色が黄色になるので注意してください。この値は、config.inc.phpで使用した値以下にする必要があります。

設定を保存して終了し、phpMyAdminを再起動しました。

最後に、すべてのメッセージが消えました。私のセッションは設定に従って(この場合は終日)アクティブのままで、私の設定は記憶されています。

きっとこれが誰かの役に立つことを願っています。私が対処して解決するのは私にとってイライラさせられました。


0

ここにwampをインストールし、次にwamp、apps、phpmyadmin versionフォルダーの順に移動し、次にライブラリーに移動して、config.default.phpファイルを編集します。

E:\ wamp \ apps \ phpmyadmin4.6.4 \ libraries \ config.default.php

ここで変更する必要があります

$ cfg ['LoginCookieRecall'] = true;

$ cfg ['LoginCookieRecall'] = false;

また、代わりにクッキーの時間を変更して、クッキーのリコールを無効にすることもできます

$ cfg ['LoginCookieValidity'] = 1440;

$cfg['LoginCookieValidity'] = anthing grater then 1440 

私の

 $cfg['LoginCookieValidity'] = 199000;

変更後、サーバーを再起動します ここに画像の説明を入力してください

また、別の方法がありますが、Wampサーバーを再起動するとリセットされます。ここにもその方法があります。

phpmyadminダッシュボードにログインし、設定に移動して機能をクリックすると、一般的なタブにログインCookieの有効性が14400を超える値が表示されますが、これはサーバーの次の再起動まで有効です。

ここに画像の説明を入力してください


0

Ubuntu 18.04の場合、ファイルを編集しました /usr/share/phpmyadmin/libraries/config.default.php

変化する: $cfg['LoginCookieValidity'] = 1440

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.