Bagaimana cara mengubah waktu sesi Admin di Magento?


28

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:


28

Ada item menu untuk ini di:

Sistem> Konfigurasi> Lanjutan> Admin> Keamanan> Session Seumur Hidup (Detik)

Periksa juga variabel lingkungan php

  • php_value session.cookie_lifetime <seconds>
  • php_value session.gc_maxlifetime <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 .


16

Solusi untuk Magento 2.0

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


Tampaknya berfungsi untuk saya pada 2.1 sekarang, setidaknya dalam mode pengembang jika itu penting.
Aaron McMillin

Patah di 2.1.1, selalu cookie sesi
Alex

Ini berfungsi untuk Magento saya v.2.3.1
kanenas

4

Solusi sederhana lain tanpa mengubah pengaturan apa pun adalah menginstal apa pun auto refresh addonuntuk 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 Refreshdan berfungsi dengan baik untuk saya.


2

Sistem -> Konfigurasi -> Umum -> Web -> manajemen Cookie Sesi

Cookie Seumur Hidup: Ubah nilai ini (yaitu: 86400).


8
Maaf, tapi ini nilai untuk seumur hidup sesi di frontend (toko). Masa sesi admin dapat diatur melalui Sistem> Konfigurasi> Bagian Tingkat Lanjut> Admin> Seumur Hidup Sesi (detik). Setel ke 3600 (60 detik * 60 menit) selama satu jam.
Anna Völkl

@ AnnaVölkl Saya sudah menulis posting detail tentang ini. magento2training.com/…
Nahid

2

Periksa tangkapan layar gambar terlampir di bawah ini dari panel admin Magento 2 ke sesi pengaturan untuk pengguna login. masukkan deskripsi gambar di sini


2

Solusi untuk Magento 2.1+

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->scopeConfigharus 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.




0

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

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.