Cómo eliminar SID (ID de sesión) de la URL en Magento 2


Respuestas:


23

Vaya a Tienda> Configuración> General> Web> Configuración de validación de sesión> Usar SID en Storefront y establezca su valor en No

ejemplo

Aquí está la buena respuesta sobre el SID :

El SID es un "ID de sesión". Magento usa esto para rastrear la actividad de un usuario dentro de la misma instalación de Magento. Normalmente, Magento alimenta un sitio web y una tienda desde una instalación (base de datos).

Sin embargo, Magento podría impulsar múltiples sitios web con múltiples tiendas desde una instalación. El SID permite a los usuarios permanecer conectados mientras navegan por estos sitios web / tiendas.

Creo que si tiene la función habilitada, el SID se envía al acceder a las URL del catálogo para que Magento pueda actualizar la sesión con la ubicación / estado del usuario para el sitio web / tienda actual.

Si no está ejecutando un entorno de múltiples sitios web o varias tiendas, es seguro deshabilitar el SID en la interfaz.


Gracias por responder !!! ¡Voy a hacer esto y respondo el resultado en unos minutos!
Matt Bidas

2
Utilicé este enfoque y deshabilité el SID en el front-end, también el modo Single-store configurado en "Sí", el SID todavía aparece. En el modo de producción, ¿deberíamos regenerar archivos para que esto funcione? No lo creo, ya que es un valor de configuración. ¿Algunas ideas?
dchayka

@dchayka Creo que esto podría ser un problema de caché. Intenta actualizarlo.
Siarhey Uchukhlebau

El caché @SiarheyUchukhlebau se ha actualizado. Me di cuenta de qué se trata. Gracias por el seguimiento.
dchayka

@SiarheyUchukhlebau ¿Cómo puedo cambiar la metaetiqueta por ejemplo.com/?SID=nufp7tmaardcoff2ddbp4vmmo6 en magento 2?
supriya mishra

4

Aquellos de ustedes que ya establecieron Usar SID en Storefront en No (como señaló Siarhey Uchukhlebau en su respuesta) pero aún no pueden deshacerse de & sid = ... en la URL, revisen los siguientes enlaces.

Es un error de Magento, que se corregirá en la versión 2.3
Ticket relacionado: https://github.com/magento/magento2/issues/9453

Afortunadamente, hay un tutorial de Inchoo sobre cómo eliminarlo a través del archivo .htaccess como solución alternativa
http://inchoo.net/dev-talk/remove-sid-from-magento-urls/


Se lanza Magento 2.3. ¿Se ha solucionado esto? No puedo encontrar nada al respecto.
Akif

No estoy usando Magento 2.3, pero en Magento 2.2.6 ya no enfrento este problema.
Michael Poppinger

0

¿ ?SIDPHP no lo agrega automáticamente si PHP está configurado para no almacenar sesiones en el servidor o el navegador no acepta cookies?

Creo que Magento no hace esto por defecto. Hay una configuración para eso, pero supongo que el OP no cambió esto, de lo contrario lo habría descubierto por sí mismo.


Si la opción de tiempo de ejecución de PHP session.use_trans_sid está habilitada, los URI relativos se cambiarán para contener el ID de la sesión automáticamente. Esta opción no está activada por defecto. La configuración predeterminada de Magento 2 para "Usar SID en Storefront" es "Sí".
t-richards

-7

vendor/magento/framework/Session/SidResolver.php

Encuentre la función y comente la línea como se muestra a continuación.

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

1
No edite los archivos principales de Magento. También después del siguiente comando Composer, el contenido de vendor/magento/framework/podría ser restaurado / actualizado
7ochem
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.