Programing

1440 초 후 phpmyadmin이 로그 아웃

lottogame 2020. 7. 5. 21:10
반응형

1440 초 후 phpmyadmin이 로그 아웃


내 로컬 개발 우분투 상자에서 MySQL과 phpmyadmin을 사용하여 데이터베이스 작업을합니다.

phpmyadmin이 1440 초 (24 분) 동안 유휴 상태가되면 세션이 만료됩니다. 나는 자리를 잃고 로그인하고 다시 시작해야합니다.

나는 $cfg['LoginCookieValidity'] = 3600 * 9;내부를 바꾸려고 config.inc.php했지만 여전히 1440 초 안에 시간 초과됩니다.

모든 것을 다시 시작하고 브라우저 캐시를 지 웠습니다 (Firefox 기록-> 최근 기록 지우기-> 캐시-> 모두).

시간 초과가 증가한 이유가 확실하지 않습니다. 내가 뭘 잘못하고 있죠?


브라우저에서 PHPMyAdmin으로 이동

설정> 기능> 로그인 쿠키 유효 값 변경> 저장여기에 이미지 설명을 입력하십시오


이 줄을 /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 사이트에서 세션 시간이 엄청나게 길어질 수 있기 때문에 메인 php.ini 파일에서이 값을 변경하지 않는 것이 좋습니다.

출처 : http://www.sitekickr.com/blog/increase-phpmyadmin-timeout/


쿠키 시간 세션 기능은 다음에서 변경할 수 있습니다.

설정-> 기능-> 일반-> 로그인 쿠키 유효성

여기에서 답을 찾았습니다 . 1440 초 내에 활동이 없습니다. 다시 로그인하십시오


phpmyadmin 웹 인터페이스에서 쿠키 시간 세션 기능을 변경할 수 있습니다

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

또는

구성 파일에서 '로그인 쿠키 유효성'을 변경하려면 config.inc.phpPHPMyAdmin의 루트 디렉토리에서 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세션 유효성을 제한 할 수 있고 세션이 손실되면 로그인 쿠키도 무효화됩니다. 따라서 php.ini설정 파일 에서 session.gc_maxlifetime을 설정해야 할 수도 있습니다 (파일 위치는 우분투의 / etc / php5 /apache2/php.ini입니다).

session.gc_maxlifetime = 3600 * 3


LoginCookieValidity에 대한 phpMyAdmin 설명서

$ cfg [ 'LoginCookieValidity']

유형 : 정수 [초]
기본값 : 1440

로그인 쿠키 유효 기간을 정의하십시오. php 구성 옵션 session.gc_maxlifetime은 세션 유효성을 제한 할 수 있으며 세션이 손실되면 로그인 쿠키도 무효화됩니다. 따라서 session.gc_maxlifetime을 적어도 $ cfg [ 'LoginCookieValidity']의 동일한 값으로 설정하는 것이 좋습니다.

노트:

  1. 서버가 다운되어 phpmyadmin 페이지를로드 할 수없는 경우 /var/log/apache2/error.log에서 아파치 로그를 확인하십시오. 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위에서 언급 한대로 변경하십시오 .

phpmyadmin 설정 변경을위한 UI가있는 것 같습니다. 아파치를 시작하고 다음 링크를 클릭하십시오

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


phpMyAdmin settingsPHP my.ini에서 설정을 변경하거나 .htaccess 파일을 정의하기 위해 아무런 문제 나 요구 사항 없이이 작업을 수행하는 단계 :

  1. 당신의 GOTO phpmyadmin및 경로 찾기 create_tables.sql(하위 폴더 중 하나 phpMyAdmin/sql/create_tables.sql. 내 4.4.9 버전) 및 웹 브라우저에서 현재 phpMyAdmin을 사이트에 전체 파일 내용을 실행합니다. 그러면 phpmyadmin모든 phpMyAdmin 옵션을 영구적으로 저장할 수 있는 데이터베이스가 생성됩니다 .
  2. phpMyAdmin에서 config.inc.php주석 처리 된 행을 찾아 $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';주석 처리를 제거하십시오 (이제 phpMyAdmin은 이전 단계에서 생성 한 해당 사용자 정의 데이터베이스를 사용합니다).
  3. 고토 phpMyAdmin웹 브라우저에서 오도 Server >> Settings >> Features >> "Login Cookie Validity"화상에 그대로 Pavnish 설명하고 원하는 값을 설정. 지금 작동합니다.

참고 자료 : Niccolas Answer , PhpMyAdmin 구성 스토리지 , flashMarks 답변


mysqld가 아닌 Apache 또는 httpd를 다시 시작해야합니다.

sudo service httpd restart

또는

sudo /etc/init.d/apache2 restart

"PHP 매개 변수 session.gc_maxlifetime이 phpMyAdmin에 구성된 쿠키 유효성보다 낮습니다. 이로 인해 로그인이 phpMyAdmin에 구성된 것보다 빨리 만료됩니다."라는 또 다른 경고가 표시됩니다. 어쨌든 PHP 세션이 먼저 시간 초과되기 때문에 의미가 있습니다. 따라서 /etc/php.ini를 변경해야합니다.

session.gc_maxlifetime = 43200
That’s 12 hours in seconds. 

아파치 서버를 다시 시작하면 완료됩니다!

출처 : http://birdchan.com/home/2011/06/06/phpmyadmin-timeout-after-1440-seconds/

이것은 나를 위해 작동합니다! :)


phpMyAdmin 세션 시간 초과를 늘리고 루트 phpMyAdmin 디렉토리에서 config.inc.php를 열고이 행을 추가하십시오.

from the wamp folder path wamp\apps\phpmyadmin4.0.4\config.inc.php

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

Example

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

Note: short cookie lifetime is all well and good for the development server not for your production server.


1) Login to phpMyAdmin 2) From the home screen click on "More settings" (middle bottom of screen for me) 3) Click the "Features" tab/button towards the top of the screen. 4) For 20 days set the "Login cookie validity" setting to 1728000 5) Apply.

php xampp


It is not working. The PHP session will expire anyway after 1440 seconds.

Change in PHP.ini this too:

session.gc_maxlifetime = 3600

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

Also, from PHP.ini:

If you are using the subdirectory option for storing session files

; (see session.save_path above), then garbage collection does not

; happen automatically. You will need to do your own garbage

; collection through a shell script, cron entry, or some other method.

; For example, the following script would is the equivalent of

; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):

; cd /path/to/sessions; find -cmin +24 | xargs rm


change in php.in file from wampicon/php/php

session.gc_maxlifetime = 1440

to

session.gc_maxlifetime = 43200

To set permanently cookie you need to follow some steps

Goto->/etc/phpmyadmin/config.inc.php file

add this code

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

If the parameter $cfg['LoginCookieValidity'] is not taking effect in config.inc.php file, try disabling the session.gc_maxlifetime in the php.ini file by putting a semicolon to the left like this:

; 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

Or try disabling both $cfg['LoginCookieValidity'] and session.gc_maxlifetime = 1440 by commenting both out.

Then phpMyAdmin should no longer log out when you idle. It works for me on Windows. Don't forget to clear your browser cache and restart your webserver.


steps to change cookie expiration

step 1:Go to settings of Phpmyadmin

step 2:General

step 3:Login cookie validity

step 4:Update 1440 seconds default cookie expiration time with your new value


If you have phpmyadmin configuration storage setup, the settings will be pulled out of your phpmyadmin.pma__userconfig table, and will override anything you have in config.inc.php. In this table, each MYSQL user can be assigned a different set of phpmyadmin settings.


I have found the solution and using it successfully for sometime now.

Just install this Addon to your FF browser.


After I tried all suggested methods here and still kept getting logged out, I turned to writing a small usercsript for Tampermonkey as I already have that extension. It is very simple and just sends a request to one of low footprint scripts of PHPMyAdmin once every minute. Here is the code:

// ==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);
})();

===method 1 with http login===

[php.ini]
session.gc_maxlifetime = 86400

[config.inc.php]

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

===method 2 with cookie login===

[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

N.B.

  1. every user has independent setting and [webUI] procedure has to be repeated for each user

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

link does not appears on frontpage, go settings > features > warnings > Missing phpMyAdmin configuration storage tables > [refresh] a few times will make it appears


It worked for me after I

  • changed the $cfg['LoginCookieValidity'] in (phpmyadmin folder)/libraries/config.default.php to 999999999.

  • checked the php.ini used by the phpmyadmin by php5 -i | grep php.ini.

  • went to the php.ini file whose path I got from the grep command output and changed the session.gc_maxlifetime value to 999999999.

  • restarted the server. In my case it was sudo service apache2 restart.

Done. Logged in phpmyadmin and checked the cookie validity in Settings -> Features -> General -> Login cookie validity. It was 999999999. Also there was no warning "Your PHP parameter session.gc_maxlifetime is lower that cookie validity ...". The warning showed after I logged in phpmyadmin before I changed the php.ini file.

Check the version of php used by the phpmyadmin. You should change the ini file of the php that is used by the phpmyadmin. I have php5 and php(i.e 7) both installed. But my phpmyadmin uses php5. So I had to search for ini file of php5.


I know this is an old post but I tried every solution I read, including those on this page to no avail, and then I got lucky so I'm posting it here.

I'm running Ubuntu 17.10.

I archived /etc/phpmyadmin/config.inc.php and replaced its content with the content of /usr/share/phpmyadmin/config.sample.inc.php.

I then

 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.

I saved the file and restarted phpMyAdmin.

서버 : localhost-> 설정-> 기능을 선택하고 "로그인 쿠키 유효성"값을 86400 (24 시간)으로 변경했습니다. 기본값이 아닌 값을 지정하면이 옵션의 배경색이 노란색이되어 경고하지 않습니다. 값은 config.inc.php에서 사용한 값보다 작거나 같아야합니다.

설정을 저장하고 종료 한 다음 phpMyAdmin을 다시 시작했습니다.

마지막으로 모든 메시지가 사라졌습니다. 설정에 따라 (이 경우 하루 종일) 내 세션이 활성 상태로 유지되며 내 설정이 기억됩니다.

나는 이것이 누군가에게 도움이되기를 바랍니다. 내가 처리하고 해결하는 것은 좌절했다.

참고 URL : https://stackoverflow.com/questions/13697820/phpmyadmin-logs-out-after-1440-secs

반응형