2010-05-06 28 views
12

Uso phpmyadmin para crear una base de datos mysql. Y configuré el tipo de autenticación en cookie en config.inc.php. ¿Cómo puedo cambiar el límite de tiempo para que, incluso si me conecté, estuve inactivo durante horas y no necesite volver a iniciar sesión?Cómo cambiar el límite de tiempo en phpmyadmin (iniciar sesión)

+0

Debe solicitarse en http://serverfault.com/ –

+0

Un blog detallado: http://sforsuresh.in/phpmyadmin-no-activity-within-1440-seconds-please-login/ –

Respuesta

2

Buscando esto:

ini_set('session.gc_maxlifetime', '3600'); 

De acuerdo con los comentarios - Se puede encontrar en el archivo php.ini o ejecutar la declaración anterior en la secuencia de comandos en el que está configurando la sesión

+0

puede especificar dónde puede se puede encontrar? – user225269

+0

@ user225269: Puede encontrarlo en el archivo 'php.ini' o ejecutar la declaración anterior en su script donde está configurando la sesión. – Sarfraz

+0

@ user225269: De nada :) – Sarfraz

36

Sé que esta pregunta está envejeciendo, pero la respuesta 'seleccionada' anterior en realidad no funciona. Eso solo establece el tiempo hasta que se eliminen los datos de la sesión.

Después de probar esto y darse cuenta de que estaba fallando, pasé algún tiempo a la lectura a través de los documentos phpmyadmin y encontramos este:

$cfg['LoginCookieValidity'] = 86400; 
$cfg['LoginCookieStore'] = 0; 

La primera línea es la cantidad de tiempo hasta que esté automático se desconectó. Estos valores deben establecerse en su carpeta de instalación de phpmyadmin, dentro del archivo config.inc.php.

No estaban en absoluto en mi archivo pero después de agregarlos al final funcionó correctamente. La primera variable define cuánto tiempo debe esperar hasta que se cierre la sesión en segundos. Establecí la mía en 1 día. La segunda variable es cuánto dura la cookie. 0 significa que la cookie dura hasta que cierre su navegador.

La configuración de estas dos variables tendrá el efecto deseado. Podrías establecer ambos en un número insano y nunca iniciar sesión, pero eso sería bastante inseguro.

solución
8

rápido para Ubuntu:


// editar php.ini y buscar session.gc_maxlifetime
sudo vi /etc/php5/apache2/php.ini

// establece en 24 horas
session.gc_maxlifetime = 86400


// editar config.inc.php y buscar $cfg['LoginCookieValidity']
sudo vi /etc/phpmyadmin/config.inc.php

// establece en 24 horas
$ cfg [ 'LoginCookieValidity'] = 86.400;


// reiniciar el servidor web
sudo servicio apache2 restart

2

Usted puede evitar la autenticación de cookies por completo y utilizar

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

en su archivo config.inc.php encontrado en la carpeta phpmyadmin.

Esto lo mantendrá conectado para siempre.

4

En mi caso (4.3.8) basta con sustituir en config.inc.phpcookie-config y añadir 2 líneas como abajo:

/* 
* First server 
*/ 
$i++; 
/* Authentication type */ 
$cfg['Servers'][$i]['auth_type'] = 'config'; 
$cfg['Servers'][$i]['username'] = 'root'; //add this line 
$cfg['Servers'][$i]['password'] = 'root'; //add this line 
2

fin encontré los trucos, suponiendo que tiene al menos la versión 4.3.x:

en primer lugar, ingrese a phpMyAdmin, una vez que ingrese, haga clic en Bases de datos (que se encuentra en el menú superior)

Th en el texto de entrada Crear base de datos de, insertar phpmyadmin y haga clic en Crear(Se puede seleccionar el juego de caracteres deseado, esto es opcional)

Cuando se crea la base de datos, haga clic para que en la lista (debe aparecer con la otra base de datos)

Pulse para SQL e insertar el contenido de create_tables.sql situado en el directorio de phpMyAdmin:

/phpMyAdmin-(yourversion)-all-languages/sql/create_tables.sql 

opcionalmente se puede volcar en la línea de comandos (terminal):

mysql phpmyadmin -u myMysqluser -pMypassword < create_tables.sql 

Ahora que se han hecho, abrir su config.inc.php y elimine esas 2 líneas:

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

Tenga en cuenta que si no elimina el comentario del otro $ cfg ['Servers'] [$ i], phpmyadmin devolverá:

El almacenamiento de configuración phpMyAdmin no está completamente configurado, algunas funciones extendidas se han desactivado. Averigua porque. O alternativamente vaya a la pestaña 'Operaciones' de cualquier base de datos para configurarlo allí.

Cuál es apenas una advertencia referente a las otras opciones disponibles. (si no los necesita, dejarlos comentario)

iniciar sesión otra vez a phpMyAdmin y vaya a Configuración (que se encuentra en el menú superior entre la importación y la replicación) y haga clic en Características Verá la opción:

Login cookie validity 

Donde debe poner en segundos, la validez de la cookie.

Haga clic en Aplicar y se hace, el registro será salvo por este usuario en la tabla pma__userconfig en la base de datos creada previamente (phpMyAdmin), el registro se verá así:

{"LoginCookieValidity":21600,"Server\/hide_db":"","collation_connection":"utf8mb4_unicode_ci"} 

Si la validez de la cookie (en segundos) es mayor que su session_gc_maxlifetime, phpMyAdmin devuelve un aviso:

su parámetro PHP session.g c_maxlifetime es más baja que la validez de galletas configurado en phpMyAdmin, debido a esto, su nombre de usuario podría expirará antes de lo configurado en phpMyAdmin

session_gc_maxlifetime se encuentra a su php.ini, cambiarlo y reinicie su servidor web si aparece la advertencia anterior.

+0

¡Eso era exactamente lo que estaba buscando! ¡Muchas gracias! –

Cuestiones relacionadas