phpmyadmin ออกจากระบบหลังจาก 1440 วินาที


134

ในกล่อง Ubuntu การพัฒนาท้องถิ่นของฉันฉันใช้ MySQL และ phpmyadmin เพื่อทำงานกับฐานข้อมูล

เมื่อใดก็ตามที่ phpmyadmin ไม่ได้ใช้งานเป็นเวลา 1440 วินาที (24 นาที) เซสชันจะหมดอายุ ฉันสูญเสียสถานที่และต้องเข้าสู่ระบบและเริ่มต้นใหม่

ฉันพยายามเปลี่ยน$cfg['LoginCookieValidity'] = 3600 * 9;ข้างในconfig.inc.phpแต่ก็ยังหมดเวลาใน 1440 วินาที

ฉันรีสตาร์ททุกอย่างและล้างแคชของเบราว์เซอร์ (ประวัติ Firefox -> ล้างประวัติล่าสุด -> แคช -> ทุกอย่าง)

ฉันไม่แน่ใจว่าเหตุใดระยะหมดเวลาที่เพิ่มขึ้นจึงไม่มีผล ผมทำอะไรผิดหรือเปล่า?


5
สิ่งแรกที่ฉันคิดคือคุณรีสตาร์ทเว็บเซิร์ฟเวอร์หลังจากเปลี่ยน config.inc.php หรือไม่
0xmtn

ใช่ฉันรันคำสั่งนี้แล้ว: sudo service mysql restart
sandeep

2
หากคุณแก้ไขปัญหานี้ได้แล้วโปรดโพสต์วิธีแก้ปัญหาเป็นคำตอบที่นี่ได้ไหม ;)
0xmtn

สำหรับ Ubuntu 18.04 ฉันเพิ่งแก้ไขไฟล์ /usr/share/phpmyadmin/libraries/config.default.php เปลี่ยน: $ cfg ['LoginCookieValidity'] = 1440
Ahmed Ismail

คำตอบ:


199

ไปที่ PHPMyAdmin ในเบราว์เซอร์ของคุณ

การตั้งค่า> คุณสมบัติ> เปลี่ยนค่าความถูกต้องของคุกกี้การเข้าสู่ระบบ> บันทึกป้อนคำอธิบายภาพที่นี่

หมายเหตุ : คุณจะต้องทำสิ่งนี้ต่อเซสชัน


5
นี่เป็นวิธีแก้ปัญหาที่เร็วและง่ายที่สุดสำหรับปัญหานี้ น่าจะตอบโจทย์ !!!
Pini Cheyni

14
ไม่ใช่วิธีแก้ปัญหาถาวร ฉันได้ลองทำสิ่งนี้แล้ว แต่หลังจากผ่านไปหนึ่งหรือสองวันระบบจะรีเซ็ตเป็น 1440 วินาทีอีกครั้ง
Rolen Koh

5
ใช้ได้กับเซสชันปัจจุบันเท่านั้น มันยังบอกอย่างนั้นในการตั้งค่า
Richard Duerr

4
อย่าลืมอัปเดตการตั้งค่า php.inisession.gc_maxlifetime = SAME_OR_BIGGER_VALUE_AS_PHPMYADMIN
Lukas Liesis

7
FYI:ไม่ใช่ตัวเลือกที่ดีที่สุด บันทึกลงในเซสชันปัจจุบันเท่านั้น
Abdulla Nilam

70

เพิ่มบรรทัดนี้ใน /config.inc.php:

$cfg['LoginCookieValidity'] = 36000;

ใน /setup/lib/index.lib.php

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

หากคุณยังไม่มีไฟล์. htaccess สำหรับไซต์ phpMyAdmin ของคุณให้สร้างขึ้นมาและเพิ่มบรรทัดต่อไปนี้เพื่อแทนที่ระยะหมดเวลาเริ่มต้นของเซสชัน 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

1
แทนที่จะใส่บรรทัดแรกในphpmyadmin/config.inc.phpไฟล์ใหม่ในไดเร็กทอรีphpmyadmin/conf.dเพื่อที่จะไม่ถูกเขียนทับในการอัปเกรด
zelcon

5
คุณยังสามารถขยาย gc_maxlifetime ได้โดยเพิ่มสิ่งต่อไปนี้ในไฟล์ config.inc.php ของคุณ (โดยทั่วไปจะอยู่ในไดเร็กทอรี / etc / phpmyadmin): ini_set ('session.gc_maxlifetime', '36000'); สิ่งนี้จะแปลเป็น phpmyadmin และไม่ส่งผลกระทบต่อระยะเวลาการเก็บรวบรวมขยะของสคริปต์ PHP อื่น ๆ และอยู่บนพื้นฐานของเอกสารไฟล์ config.inc.php จะหมายถึงการจะใช้ในการแก้ไขพฤติกรรม - ดูdocs.phpmyadmin.net/en/latest/config.html ดังนั้นไม่ต้องกังวลว่าไฟล์นี้จะถูกเปลี่ยนแปลงโดยการอัพเกรด
ReverseEMF

1
ฉันเพิ่งลองสิ่งนี้และดูเหมือนว่าไม่จำเป็นต้องใช้ขั้นตอนที่ 2 แค่ไฟล์ config เปลี่ยนและ. htaccess ก็เปลี่ยน
Andy Mercer

สำหรับ Ubuntu 18.04 ไฟล์คือ/usr/share/phpmyadmin/libraries/config.default.php
Ahmed Ismail

53

เราสามารถเปลี่ยนคุณสมบัติช่วงเวลาคุกกี้ได้ที่:

การตั้งค่า -> คุณสมบัติ -> ทั่วไป -> ความถูกต้องของคุกกี้เข้าสู่ระบบ

ฉันพบคำตอบที่นี่ .. ไม่มีกิจกรรมใด ๆ ภายใน 1440 วินาที; กรุณาเข้าสู่ระบบอีกครั้ง

แก้ไข:

โซลูชันนี้จะใช้ได้เฉพาะกับเซสชันปัจจุบันการเปลี่ยนแปลงอย่างถาวรให้ทำดังนี้

เปิด config.inc.php ในไดเร็กทอรี root phpMyAdmin

โฟลเดอร์ wamp: wamp \ apps \ phpmyadmin {version} \ config.inc.php

อูบุนตู: / etc / phpmyadmin

เพิ่มบรรทัดนี้

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

ตัวอย่าง

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

9
คุณต้องเปลี่ยนsession.gc_maxlifetimephp.ini ให้สูงกว่าค่าเริ่มต้น: 1440 ด้วย
M Rostami

5
คำตอบนี้ไม่สมบูรณ์มากและไม่ควรเป็นผู้ที่ได้รับการโหวตสูงสุด การเปลี่ยนการตั้งค่าจะให้คำเตือนดังต่อไปนี้: "ค่ากำหนดของคุณจะถูกบันทึกไว้สำหรับเซสชันปัจจุบันเท่านั้นการจัดเก็บอย่างถาวรต้องใช้ที่เก็บข้อมูลการกำหนดค่า phpMyAdmin"
fivedogit

@fivedogit ที่นี่ฉันได้วางคำตอบที่สมบูรณ์ยิ่งขึ้นซึ่งใช้งานได้ดีสำหรับคำตอบนี้
Mojtaba Rezaeian

โปรดทราบว่าคุณไม่สามารถตั้งค่าที่มากกว่า 9223372036854775806 มิฉะนั้นจะส่งผลให้จำนวนเต็มล้น
egdavid

23

คุณสามารถเปลี่ยนคุณสมบัติเซสชันเวลาคุกกี้ได้ที่เว็บอินเตอร์เฟส phpmyadmin

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

หรือ

หากคุณต้องการเปลี่ยน 'ความถูกต้องของคุกกี้การเข้าสู่ระบบ' ในไฟล์คอนฟิกูเรชันให้เปิดไฟล์คอนฟิกูเรชัน phpmMyAdmin config.inc.phpในไดเร็กทอรีรูทของ PHPMyAdmin (ไดเร็กทอรีรากมักจะเป็น / 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อาจ จำกัด ความถูกต้องของเซสชันและหากเซสชันสูญหายคุกกี้การเข้าสู่ระบบก็จะไม่ถูกต้องเช่นกัน ดังนั้นเราอาจต้องตั้งค่า session.gc_maxlifetime ในphp.iniไฟล์กำหนดค่า (ตำแหน่งไฟล์คือ / etc / php5 /apache2/php.ini ใน ubuntu)

session.gc_maxlifetime = 3600 * 3


phpMyAdmin เอกสารเกี่ยวกับ LoginCookieValidity

$ cfg ['LoginCookieValidity']

ประเภท: จำนวนเต็ม [จำนวนวินาที]
ค่าเริ่มต้น: 1440

กำหนดระยะเวลาที่คุกกี้การเข้าสู่ระบบสามารถใช้ได้ โปรดทราบว่าตัวเลือกการกำหนดค่า php session.gc_maxlifetime อาจ จำกัด ความถูกต้องของเซสชันและหากเซสชันสูญหายคุกกี้ล็อกอินก็จะไม่ถูกต้องเช่นกัน ดังนั้นจึงควรตั้งค่า session.gc_maxlifetime อย่างน้อยเป็นค่า $ cfg ['LoginCookieValidity'] เท่ากัน

บันทึก:

  1. หากเซิร์ฟเวอร์ของคุณขัดข้องและไม่สามารถโหลดหน้า phpmyadmin ของคุณได้ให้ตรวจสอบบันทึก apache ของคุณที่ /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.phpขึ้นสาย 135 ให้ทำ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 ตามที่กล่าวไว้ข้างต้น

17

ดูเหมือนว่าจะมี UI สำหรับเปลี่ยนการกำหนดค่า phpmyadmin เริ่มต้น apache แล้วคลิกลิงก์ต่อไปนี้

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


2
ลิงค์นี้จะนำไปสู่ phpMyAdmin ติดตั้ง เปลี่ยนการตั้งค่าของการทำงานแอพลิเคชันผ่านมันของการติดตั้งสคริปต์เป็นนิด ๆ หน่อย ๆ ที่มีความเสี่ยงไม่ได้คุณคิดว่า?
trejder

13

ขั้นตอนในการดำเนินการโดยphpMyAdmin settingsไม่มีปัญหาหรือข้อกำหนดใด ๆ ในการเปลี่ยนการกำหนดค่าใน php my.ini หรือการกำหนดไฟล์. htaccess:

  1. ไปที่phpMyAdminเส้นทางการติดตั้งของคุณ(เช่น/ usr / share / phpMyAdmin /บน centos7 ของฉัน) และค้นหาcreate_tables.sqlในโฟลเดอร์ย่อย ( phpMyAdmin/sql/create_tables.sqlในเวอร์ชัน 4.4.9 ของฉัน) และเรียกใช้เนื้อหาไฟล์ทั้งหมดในไซต์ phpMyAdmin ปัจจุบันของคุณจากเว็บเบราว์เซอร์ของคุณ สิ่งนี้จะสร้างฐานข้อมูลที่ตั้งชื่อphpmyadminซึ่งสามารถเก็บตัวเลือก phpMyAdmin ทั้งหมดของคุณได้อย่างถาวร
  2. ใน phpMyAdmin ของconfig.inc.php(อยู่บน/ etc / phpMyAdmin /ในเซิร์ฟเวอร์ centos7 ของฉัน) ค้นหาบรรทัดที่แสดงความคิดเห็น$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';และยกเลิกการแสดงความคิดเห็น(ตอนนี้ phpMyAdmin จะใช้ฐานข้อมูลที่กำหนดเองที่เราสร้างขึ้นในขั้นตอนก่อนหน้านี้)
  3. ไปphpMyAdminจากเว็บเบราว์เซอร์และ goto Server >> Settings >> Features >> "Login Cookie Validity"ตามภาพที่ Pavnish อธิบายและตั้งค่าที่ต้องการ ตอนนี้ใช้งานได้แล้ว

การอ้างอิง : Niccolas Answer , PhpMyAdmin Configuration Storage , flashMarks Answer


สิ่งนี้ใช้ไม่ได้กับ phpMyAdmin 4.8.3 ทำให้ซับซ้อนอีกครั้ง ฉันจำได้ว่าก่อนการอัปเดตนี้ (ฉันใช้ 4.4 หรือมากกว่านั้น) ทุกอย่างทำงานได้ดีผ่านเซิร์ฟเวอร์ >> การตั้งค่า >> คุณสมบัติดังที่กล่าวไว้ที่นี่ ไม่อีกแล้ว. config.inc.php ไม่ได้มาพร้อมกับบรรทัดนั้น
luisfer

8

จากนั้นคุณจะได้รับคำเตือนอีกครั้ง:“ พารามิเตอร์ PHP ของคุณ session.gc_maxlifetime ต่ำกว่าที่ความถูกต้องของคุกกี้ที่กำหนดค่าใน phpMyAdmin ด้วยเหตุนี้การเข้าสู่ระบบของคุณจะหมดอายุเร็วกว่าที่กำหนดไว้ใน phpMyAdmin” นั่นเป็นเหตุผลเพราะเซสชันของ php จะหมดเวลาก่อน ดังนั้นเราจะต้องเปลี่ยน /etc/php.ini

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

รีสตาร์ทเซิร์ฟเวอร์ apache ของคุณและเสร็จสิ้น!

ที่มา: http://birdchan.com/home/2011/06/06/phpmyadmin-timeout-after-1440-seconds/

มันใช้ได้กับฉัน! :)


7

คุณควรรีสตาร์ท apache หรือ httpd ไม่ใช่ mysqld

sudo service httpd restart

หรือ

sudo /etc/init.d/apache2 restart

ตอนนี้ฉันได้รีสตาร์ท apache โดยใช้คำสั่ง ur (เช่น sudo /etc/init.d/apache2 restart) แต่ phpmyadmin ยังคงล็อกเอาต์หลังจาก 1440 วินาที
sandeep

1
คุณเห็นข้อผิดพลาด " ไม่มีกิจกรรมภายใน 1440 วินาทีโปรดลงชื่อเข้าใช้อีกครั้ง " หรือเพิ่งออกจากระบบ ถ้ามันออกจากระบบ check session.gc_maxlifetimein ของคุณ/etc/php.iniมูลค่าของสิ่งนี้คืออะไร?
0xmtn

ใช่ฉันเห็นข้อความนี้: "ไม่มีกิจกรรมภายใน 1440 วินาทีโปรดเข้าสู่ระบบอีกครั้ง"
sandeep

1
นี่เป็นเรื่องแปลกจริงๆ คุณช่วยตั้งค่าsession.gc_maxlifetime=3600*9ใน/etc/php.iniด้วยแล้วรีสตาร์ทเว็บเซิร์ฟเวอร์แล้วลองอีกครั้งได้ไหม เพียงเพื่อให้การดีบักเร็วขึ้นให้ตั้งค่าทั้งสองอย่าง ( session.gc_maxlifetimeและ$cfg['LoginCookieValidity']) เป็นสิ่งเล็ก ๆ เช่น 50 (วินาที) จากนั้นรีสตาร์ทเว็บเซิร์ฟเวอร์ล้างแคชของเบราว์เซอร์แล้วลองอีกครั้ง
0xmtn

คุณช่วยชี้แจงได้ไหมว่าการเริ่มบริการใหม่ควรเปลี่ยนการกำหนดค่าอะไร
trejder

7

คุณเพียงแค่เพิ่ม phpMyAdmin Session Timeout เปิด config.inc.php ในไดเร็กทอรี phpMyAdmin รูทและเพิ่มบรรทัดนี้

จากเส้นทางโฟลเดอร์ wamp wamp \ apps \ phpmyadmin4.0.4 \ config.inc.php

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

ตัวอย่าง

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

หมายเหตุ: อายุการใช้งานคุกกี้สั้นนั้นดีและดีสำหรับเซิร์ฟเวอร์การพัฒนาไม่ใช่สำหรับเซิร์ฟเวอร์การผลิตของคุณ


7

1) เข้าสู่ระบบ phpMyAdmin 2) จากหน้าจอหลักคลิกที่ "การตั้งค่าเพิ่มเติม" (ตรงกลางด้านล่างของหน้าจอสำหรับฉัน) 3) คลิกแท็บ / ปุ่ม "คุณสมบัติ" ที่ด้านบนของหน้าจอ 4) เป็นเวลา 20 วันให้ตั้งค่า "ความถูกต้องของคุกกี้เข้าสู่ระบบ" เป็น 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



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 อย่าลืมล้างแคชของเบราว์เซอร์และรีสตาร์ทเว็บเซิร์ฟเวอร์


ฉันเกือบลืม. หลังจากใช้การเปลี่ยนแปลงเหล่านั้นแล้วให้ล้างแคชของเบราว์เซอร์และรีสตาร์ทเว็บเซิร์ฟเวอร์ของคุณ! เพื่อนร่วมเชียร์.
Alex

ฉันคิดว่ามันเป็นจริง$cfg['Servers'][$i]['LoginCookieValidity']ไม่ใช่สิ่ง$cfg['LoginCookieValidity']ที่ควรตั้งค่าหากคุณมีการกำหนดค่าหลายเซิร์ฟเวอร์ของ phpMyAdmin ในconfig.inc.php. และไม่แสดงความคิดเห็นว่า$cfg['Servers'][$i]['LoginCookieValidity']จะไม่ให้ผลลัพธ์ใด ๆ เนื่องจากค่านี้จะหายไปโดยค่าเริ่มต้น ดังนั้นด้วยพารามิเตอร์นี้แสดงความคิดเห็นหรือลบออกดูเหมือนว่า phpMyAdmin จะถอยกลับไปเป็น1440วินาทีเริ่มต้น
trejder

4

ขั้นตอนในการเปลี่ยนการหมดอายุของคุกกี้

ขั้นตอนที่ 1: ไปที่การตั้งค่าของ Phpmyadmin

ขั้นตอนที่ 2: ทั่วไป

ขั้นตอนที่ 3: เข้าสู่ระบบความถูกต้องของคุกกี้

ขั้นตอนที่ 4: อัปเดตเวลาหมดอายุคุกกี้เริ่มต้น 1440 วินาทีด้วยค่าใหม่ของคุณ


3
จะใช้งานได้เฉพาะเซสชั่นเฉพาะหลังจากนั้นจะตั้งค่าเป็น 1440 วินาทีอีกครั้ง
Naresh Dudhat

3

หากคุณมีการตั้งค่าหน่วยเก็บการกำหนดค่า phpmyadmin การตั้งค่าจะถูกดึงออกจากตาราง phpmyadmin.pma__userconfig ของคุณและจะแทนที่สิ่งที่คุณมีใน config.inc.php ในตารางนี้ผู้ใช้ MYSQL แต่ละคนสามารถกำหนดชุดการตั้งค่า phpmyadmin ที่แตกต่างกันได้


3

=== วิธีที่ 1 ด้วยการเข้าสู่ระบบ http ===

[php.ini]
session.gc_maxlifetime = 86400

[config.inc.php]

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

=== วิธีที่ 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> [รีเฟรช] สองสามครั้งจะทำให้ปรากฏ


โปรดจัดรูปแบบข้อมูลโค้ดนี้ให้ถูกต้อง มิฉะนั้นจะแทบอ่านไม่ได้ - แม้ว่าเนื้อหาจะดูมีแนวโน้ม
อิกอ

2

หลังจากที่ฉันลองใช้วิธีที่แนะนำทั้งหมดที่นี่และยังคงออกจากระบบฉันหันไปเขียน usercsript ขนาดเล็กสำหรับ Tampermonkey เนื่องจากฉันมีส่วนขยายนั้นอยู่แล้ว มันง่ายมากและเพียงแค่ส่งคำขอไปยังหนึ่งในสคริปต์ที่มีขนาดเล็กของ PHPMyAdmin ทุกๆนาที นี่คือรหัส:

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

0

ฉันพบวิธีแก้ปัญหาแล้วและใช้งานได้สำเร็จมาระยะหนึ่งแล้ว

เพียงแค่ติดตั้งAddonนี้ลงในเบราว์เซอร์ FF ของคุณ


3
ข้อเสนอแนะที่ดีเนื่องจากคนทั้งโลกใช้ firefox .. เพื่อทำเครื่องหมายว่าเป็นคำตอบอย่างน้อยคุณควรแนะนำ addons สำหรับเบราว์เซอร์มากกว่า 1 ตัวเนื่องจากคนปกติส่วนใหญ่ใช้เบราว์เซอร์ที่ดีเช่น google chrome ..

5
การใช้ส่วนเสริมสำหรับปัญหาที่เฉพาะเจาะจงและเล็กน้อยนั้นดูเหมือนจะหนักใจสำหรับฉัน
saimiris_devel

1
สิ่งนี้ไม่ตอบคำถาม นี่ไม่ควรเป็นคำตอบที่ยอมรับได้ คุณถามว่า:“ ฉันไม่แน่ใจว่าทำไมระยะหมดเวลาที่เพิ่มขึ้นจึงไม่มีผล ผมทำอะไรผิดหรือเปล่า?"
Philippe-André Lorin

นี่คือคำตอบที่ไม่เกี่ยวข้องโดยสิ้นเชิง ผู้ใช้จำเป็นต้องเปลี่ยน "คำตอบที่เลือก" หรือเราให้ผู้ดูแลตรวจสอบเรื่องนี้?
สตาร์

0

มันได้ผลสำหรับฉันหลังจากที่ฉัน

  • เปลี่ยน$cfg['LoginCookieValidity']ใน (phpmyadmin folder)/libraries/config.default.phpเป็น999999999.

  • การตรวจสอบphp.iniการใช้งานโดย phpMyAdmin php5 -i | grep php.iniโดย

  • ไปที่php.iniไฟล์ที่มีพา ธ ที่ฉันได้รับจากเอาต์พุตคำสั่ง grep และเปลี่ยนsession.gc_maxlifetimeค่าเป็น999999999.

  • รีสตาร์ทเซิร์ฟเวอร์ sudo service apache2 restartในกรณีของฉันมันเป็น

เสร็จแล้ว เข้าสู่ระบบ phpmyadmin และตรวจสอบความถูกต้องของคุกกี้ในการตั้งค่า -> คุณสมบัติ -> ทั่วไป -> ความถูกต้องของคุกกี้เข้าสู่ระบบ 999999999มันเป็น นอกจากนี้ยังไม่มีคำเตือน "พารามิเตอร์ PHP ของคุณ session.gc_maxlifetime ต่ำกว่าความถูกต้องของคุกกี้ ... " คำเตือนปรากฏขึ้นหลังจากที่ฉันเข้าสู่ระบบ phpmyadmin ก่อนที่ฉันจะเปลี่ยนphp.iniไฟล์

ตรวจสอบเวอร์ชันของ php ที่ใช้โดย phpmyadmin คุณควรเปลี่ยนไฟล์ ini ของ php ที่ใช้โดย phpmyadmin ฉันมี php5 และ php (เช่น 7) ติดตั้งทั้งคู่ แต่ phpmyadmin ของฉันใช้ php5 ดังนั้นฉันต้องค้นหาไฟล์ ini ของ php5


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 -> การตั้งค่า -> คุณสมบัติและเปลี่ยนค่าของ "ความถูกต้องของคุกกี้เข้าสู่ระบบ" เป็น 86400 (24 ชั่วโมง) โปรดทราบว่าค่าที่ไม่ใช่ค่าเริ่มต้นที่คุณระบุจะทำให้สีพื้นหลังของตัวเลือกนี้กลายเป็นสีเหลืองดังนั้นอย่าตื่นตระหนก ค่าควรน้อยกว่าหรือเท่ากับค่าที่คุณใช้ใน config.inc.php

ฉันบันทึกการตั้งค่าออกและรีสตาร์ท phpMyAdmin

สุดท้ายข้อความทั้งหมดก็หายไป เซสชันของฉันยังคงทำงานตามการตั้งค่า (ในกรณีนี้ทั้งวัน) และการตั้งค่าของฉันจะถูกจดจำ

ฉันหวังว่านี่จะช่วยใครบางคนได้ มันเป็นเรื่องน่าหงุดหงิดสำหรับฉันที่ต้องจัดการและแก้ไข


0

ไดรฟ์ที่นี่ wamp ของคุณติดตั้งแล้วไปที่ wamp จากนั้นแอพจากนั้นไปที่โฟลเดอร์เวอร์ชัน phpmyadmin ของคุณจากนั้นไปที่ไลบรารีจากนั้นแก้ไขไฟล์ config.default.php เช่น

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

ที่นี่คุณต้องเปลี่ยน

$ cfg ['LoginCookieRecall'] = จริง;

ถึง

$ cfg ['LoginCookieRecall'] = false;

นอกจากนี้คุณสามารถเปลี่ยนเวลาของคุกกี้แทนเพื่อปิดใช้งานการเรียกคืนคุกกี้

$ cfg ['LoginCookieValidity'] = 1440;

ถึง

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

ของฉันคือ

 $cfg['LoginCookieValidity'] = 199000;

หลังจากเปลี่ยนรีสตาร์ทเซิร์ฟเวอร์ของคุณ ป้อนคำอธิบายภาพที่นี่

นอกจากนี้ยังมีวิธีอื่น แต่จะรีเซ็ตเมื่อเรารีสตาร์ทเซิร์ฟเวอร์ wamp ของเราและนี่คือวิธีนั้นด้วย

เข้าสู่ระบบ dashbord phpmyadmin ของคุณจากนั้นไปที่การตั้งค่าจากนั้นคลิกที่คุณสมบัติและโดยทั่วไปคุณจะเห็นความถูกต้องของคุกกี้การเข้าสู่ระบบใส่อะไรที่มากกว่า 14400 แต่จะใช้ได้จนกว่าจะรีสตาร์ทเซิร์ฟเวอร์ครั้งต่อไป

ป้อนคำอธิบายภาพที่นี่



0

ทำตามขั้นตอนด้านล่างเพื่อเพิ่มการหมดเวลาเซสชันสำหรับ phpmyadmin:

วิธีที่ 1:

  • เข้าสู่ระบบ phpMyAdmin ด้วยข้อมูลประจำตัวของ root
  • เลือกการตั้งค่าจากด้านบนในแถบนำทาง
  • แตะที่คุณสมบัติ
  • ค้นหาฟิลด์ความถูกต้องของคุกกี้การเข้าสู่ระบบในแท็บทั่วไป
  • เปลี่ยนค่าสำหรับฟิลด์นี้เป็นค่าที่มากกว่า 1440 เช่น 36000 หรือสูงกว่า

ตรวจสอบให้แน่ใจว่าคุณป้อนค่าใดก็ตามในความถูกต้องของคุกกี้ล็อกอินเป็นวินาที

phpmyadmin เพิ่มการหมดเวลาเซสชัน

วิธีที่ 2:

ค้นหาconfig.inc.phpไฟล์ของคุณ

For CentOS, Fedora servers:
/etc/phpMyAdmin/config.inc.php

For Ubuntu, Debian servers:
/etc/phpmyadmin/config.inc.php

ค้นหาLoginCookieValidityในconfig.inc.phpและเพิ่มความคุ้มค่า

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

//change to 
$cfg['Servers'] [$i] ['LoginCookieValidity'] = 36000;

บันทึกการเปลี่ยนแปลงลงในไฟล์ config.inc.php และรีสตาร์ทเซิร์ฟเวอร์ของคุณ

เพิ่มsession.gc_maxlifetimeในที่จะสูงกว่าหรือเท่ากับค่าที่คุณป้อนในphp.iniconfig.inc.php

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.