Cara menghapus SID (ID sesi) dari URL di Magento 2


Jawaban:


23

Buka Store> Konfigurasi> Umum> Web> Pengaturan Validasi Sesi> Gunakan SID di Etalase dan atur nilainya menjadi Tidak

contoh

Inilah jawaban yang bagus tentang SID :

SID adalah "ID sesi". Magento menggunakan ini untuk melacak aktivitas pengguna dalam instalasi Magento yang sama. Biasanya, Magento menggerakkan satu situs web dan satu toko dari satu instalasi (basis data).

Magento bisa memberi daya pada banyak situs web dengan beberapa toko dari satu instalasi. SID memungkinkan pengguna untuk tetap masuk saat menavigasi situs web / toko ini.

Saya pikir jika Anda memiliki fungsi yang diaktifkan, SID dikirim ketika mengakses URL katalog sehingga Magento dapat memperbarui sesi dengan lokasi / negara pengguna untuk situs web / toko saat ini.

Jika Anda tidak menjalankan lingkungan multi-situs web atau multi-toko, aman untuk menonaktifkan SID di frontend.


Terima kasih atas balasan !!! Saya lakukan ini dan membalas hasilnya dalam beberapa menit !!!
Matt Bidas

2
Saya telah menggunakan pendekatan ini dan menonaktifkan SID di front-end, juga mode Single-store diatur ke "Ya", SID masih muncul. Dalam mode produksi, haruskah kita membuat ulang file untuk membuatnya berfungsi? Saya tidak berpikir begitu karena ini adalah nilai konfigurasi. Ada ide?
dchayka

@dayka Saya pikir ini mungkin masalah cache. Coba segarkan.
Siarhey Uchukhlebau

Cache @SiarheyUchukhlebau telah di-refresh. Saya tahu apa itu. Terima kasih telah menindaklanjuti.
dchayka

@SiarheyUchukhlebau Bagaimana saya bisa mengubah meta tag untuk example.com/?SID=nufp7tmaardcoff2ddbp4vmmo6 di magento 2 ??
supriya mishra

4

Anda yang telah menetapkan Gunakan SID di Toko di Depan ke Tidak (seperti yang ditunjukkan oleh Siarhey Uchukhlebau dalam jawabannya) tetapi masih tidak dapat menghilangkan & sid = ... di URL, periksa tautan berikut.

Ini adalah Bug Magento, yang akan diperbaiki dalam versi 2.3
Tiket terkait: https://github.com/magento/magento2/issues/9453

Untungnya, ada Tutorial Inchoo tentang cara menghapusnya melalui file .htaccess sebagai solusinya
http://inchoo.net/dev-talk/remove-sid-from-magento-urls/


Magento 2.3 dirilis. Apakah ini sudah diperbaiki? Tidak dapat menemukan apa pun tentang itu.
Akif

Saya tidak menggunakan Magento 2.3, tetapi di Magento 2.2.6 Saya tidak lagi menghadapi masalah ini.
Michael Poppinger

0

Tidak ?SIDditambahkan secara otomatis oleh PHP jika PHP dikonfigurasi untuk tidak menyimpan sesi di server atau browser tidak menerima cookie?

Saya percaya Magento tidak melakukan ini secara default. Ada pengaturan untuk itu, tapi saya berasumsi bahwa OP tidak mengubah ini, kalau tidak, dia akan tahu sendiri.


Jika sesi opsi run-time PHP.use_trans_sid diaktifkan, URI relatif akan diubah untuk memuat id sesi secara otomatis. Opsi ini tidak aktif secara default. Pengaturan default Magento 2 untuk "Use SID on Storefront" adalah "Ya".
t-richards

-7

vendor/magento/framework/Session/SidResolver.php

Temukan fungsinya dan beri komentar pada baris seperti di bawah ini.

public function getUseSessionInUrl()
{
   // return $this->_useSessionInUrl;
}

1
Jangan edit file inti Magento. Juga setelah perintah Komposer berikutnya, konten vendor/magento/framework/mungkin akan dipulihkan / diperbarui
7ochem
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.