Ada kemungkinan bahwa kadang-kadang waktu sesi admin aktif terlalu pendek.
Bagaimana cara mengubah waktu yang dibutuhkan untuk log-otomatis pengguna dari back-end?
Ada kemungkinan bahwa kadang-kadang waktu sesi admin aktif terlalu pendek.
Bagaimana cara mengubah waktu yang dibutuhkan untuk log-otomatis pengguna dari back-end?
Jawaban:
Ada item menu untuk ini di:
Sistem> Konfigurasi> Lanjutan> Admin> Keamanan> Session Seumur Hidup (Detik)
Periksa juga variabel lingkungan php
<seconds>
<seconds>
Untuk memastikan bahwa Anda mengedit php.ini yang benar, buat file "check.php" sederhana dengan konten berikut:
<?php
phpinfo();
?>
, letakkan file di direktori home magento Anda, panggil dari browser Anda (URL / check.php) dan periksa pengaturan ini.
Untuk informasi lebih lanjut, lihat di sini .
Untuk Magento 2 dapat ditemukan di Panel Tangan Kiri pada Admin.
Toko> Konfigurasi> Tingkat Lanjut> Admin> Keamanan
Admin Session Lifetime
(detik) pilihan di jendela utama.
Nilai default adalah 900 untuk Magento 2. Selama 1 jam diatur ke 3600
(60 detik * 60 menit).
Anda harus mengonfigurasi ini pada "Konfigurasi Default" alih-alih memilih situs web atau tampilan toko untuk opsi tampilan toko Anda. Saya mencoba menggunakannya pada tampilan toko melalui menu drop down di kiri atas dan opsi tidak ada. Masuk akal karena ini merupakan konfigurasi administrasi.
Perhatikan bahwa pengaturan ini tidak memiliki efek pada masa hidup cookie setidaknya sejak Magento 2.1
Solusi sederhana lain tanpa mengubah pengaturan apa pun adalah menginstal apa pun auto refresh addon
untuk browser Anda dan mengatur waktunya (60 detik).
Ini akan secara otomatis me-refresh halaman untuk setiap 6o detik yang mencegah masa sesi berakhir dan kita dapat mulai bekerja pada tab lain.
Saya menggunakan Easy Auto Refresh
dan berfungsi dengan baik untuk saya.
Sistem -> Konfigurasi -> Umum -> Web -> manajemen Cookie Sesi
Cookie Seumur Hidup: Ubah nilai ini (yaitu: 86400).
Sejak Magento 2.1 masa admin sesi selalu "sesi", yaitu sampai browser ditutup. Ini telah diperkenalkan untuk alasan keamanan.
Kode yang relevan ada di Magento\Backend\Model\Session\AdminConfig
:
/**
* Set session cookie lifetime to session duration
*
* @return $this
*/
protected function configureCookieLifetime()
{
return $this->setCookieLifetime(0);
}
Jika Anda ingin mengubah perilaku ini, Anda bisa menambahkan plugin untuk kelas ini dengan metode interseptor berikut:
public function beforeSetCookieLifetime()
{
$lifetime = $this->scopeConfig->getValue(
\Magento\Framework\Session\Config::XML_PATH_COOKIE_LIFETIME,
\Magento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT);
return [$lifetime, \Magento\Framework\Session\Config::COOKIE_LIFETIME_DEFAULT];
}
Di mana $this->scopeConfig
harus menjadi contoh \Magento\Framework\App\Config\ScopeConfigInterface
, disuntikkan melalui parameter konstruktor.
Dengan cara ini, masa pakai cookie digunakan dari konfigurasi, sama seperti di frontend.
Perhatikan bahwa konfigurasi di Toko> Konfigurasi> Lanjutan> Keamanan Admin> Session Seumur Hidup tidak lagi memiliki pengaruh pada cookie! Ini digunakan untuk menentukan seumur hidup sesi Redis, jadi jika Anda menambah umur cookie, Anda juga harus meningkatkan nilai ini.
Sunovisio sebenarnya menyediakan ekstensi yang memungkinkan Anda untuk menjaga sesi administrasi Anda tetap hidup saat Anda sedang bekerja dan yang independen dari batas waktu sesi Anda.
Anda dapat memeriksanya di sana: http://ecommerce.sunovisio.com/index.php/admin-keep-alive-1-1-0.html
Semoga ekstensi ini akan membantu Anda bekerja dengan Panel Administrasi Magento Anda!
Di MySQL:
tabel: core_config_data
path: admin / security / session_lifetime
ya, tetapi pertama-tama Anda harus memastikan bahwa lokasi magento dan waktu server berada di zona waktu yang sama. juga pastikan tidak ada sesi apa pun. * diganti di php.ini