SOLUCIONADO - Magento 2 - No se puede iniciar sesión en el administrador (sin mensaje de error) atascado en la pantalla de inicio de sesión

16

Esta no es una pregunta, sino una respuesta a un problema que es bastante antiguo pero recurrente. Recuerdo haber tenido problemas con esto en los días en que estaba configurando Magento 1.9 y esta vez ocurrió nuevamente en Magento 2.1.4. Olvidé por completo cómo lo arreglé en aquel entonces, así que esta vez estoy documentando mi respuesta aquí en caso de que alguien también la necesite.

Planteamiento del problema

Básicamente, estaba configurando su tienda Magento 2.1, cumplió con todos los requisitos del servidor, agregó SSL, configuró su sitio web, tienda y vista de tienda y completó la configuración de la tienda solo para darse cuenta de que de repente ya no puede iniciar sesión en el panel de administración. No hay errores, nada en la consola del navegador, ni ningún problema con el navegador Chrome / Firefox. Borra las sesiones y el caché en vano también. Encontraste respuestas que siguen apuntando a sesiones y configuraciones de caché, pero seguiste la documentación y aún no funciona.

Mubashar Aftab
fuente
primero publique la pregunta y luego haga clic en Responder su respuesta y agregue la respuesta a su.
Qaisar Satti
Entendido. Agregué la respuesta oficial en la parte inferior según su solicitud.
Mubashar Aftab

Respuestas:

26

Arreglo de emergencia

Si esta solución funciona o no, primero intente estos pasos. Podrás iniciar sesión, lo que significa que estás en la página correcta. Si aún no puede iniciar sesión, su problema probablemente sea diferente al que estoy publicando, continúe bajo su propio riesgo.

  • Ve a tu base de datos. Si tiene phpMyAdmin, haga lo siguiente:
  • Haga clic en su xxx_core_config_datatabla (xxx_ es el prefijo de tabla adicional que podría haber establecido durante la instalación)
  • Una vez que se selecciona la tabla, presione la pestaña "buscar" en el lado derecho
  • En el menú de búsqueda, en "ruta", seleccione el menú desplegable a (LIKE% ...%) e inserte "cookie" en el campo al lado. Esto buscará todas las filas de la tabla que contengan "cookie" en su valor de ruta.
  • Elimine el VALOR de lo siguiente (si no ve alguno de ellos, simplemente ignórelo. Es posible que aún no se haya configurado, por lo que puede omitirlo):
    • web/cookie/cookie_domain
    • web/cookie/cookie_httponly
    • web/cookie/cookie_lifetime
    • web/cookie/cookie_path

Eso es. Ahora, actualice su página de administrador e intente iniciar sesión. Debería funcionar. Si es así, ahora vamos al quid del problema.

La cuestión

La mayoría de las veces, siguiendo la guía nos pide que almacenemos el dominio de cookies como .domain.com, que espera un subdominio, pero el nombre de la tienda se almacena http://domain.comcomo su URL base.

La solución

Hay dos formas de solucionar este problema.

Si no va a utilizar un subdominio para el almacenamiento de cookies, puede guardar la configuración del dominio de cookies en Tiendas -> Configuración -> Web -> Dominio de cookies como (dominio.com) sin un punto y paréntesis anteriores.

Si planea preparar su tienda para el futuro y permitir el almacenamiento de cookies en el subdominio, debe configurar el Dominio de cookies como ( .domain.com) con un período anterior y sin paréntesis. Sin embargo, en su URL base debajo Stores -> Configuration -> Web -> Base URL, agregue wwwa su nombre de dominio como http://www.domain.comy httpsen la URL base segura si está utilizando SSL (que debería).

Además, otras configuraciones de cookies son las siguientes: Cookie Lifetime- 86400 (Según tengo entendido, no necesita esto y puede dejarlo en blanco y marcar "usar valor del sistema" porque ahora Magento retiene la sesión por razones de seguridad). Cookie Path- / Use HTTP Only- Sí Cookie Restriction Mode- Depende de usted. Si habilita esto, mostrará el mensaje en el front end solicitando el consentimiento del usuario para almacenar cookies.

Nota: Una vez más, este es para mis propios fines de referencia futura y para cualquiera que pueda tropezar con esta frustración al igual que yo.

Mubashar Aftab
fuente
Me salvó el día! ¡Gracias! Estaba sospechando problemas con la configuración del modo de restricción de cookies que hice la última vez, por lo que el problema resultó ser el valor del dominio de cookies establecido en ".dominio.com". Cambié el valor de la base de datos web / cookie / cookie_domain a "domain.com" y pude iniciar sesión con éxito en el área de administración.
Iveta Allogenes
1

Arreglo rapido:

Agregue o actualice entradas de URL web a https: // URL seguras para las siguientes entradas de configuración en la base de datos

En Tabla> core_config_dataestablezca el siguiente valor para su tienda:

  1. web / unsecure / base_url => ' https://yoursiteurl.com/ '

  2. web / secure / base_url => ' https://yoursiteurl.com/ '

Sachin
fuente
1

Experimenté esto después de configurar un nuevo proyecto realizado previamente por los otros desarrolladores. Por mi parte, así es como lo arreglé.

En la core_config_datatabla, busqué el camino web/cookie/cookie_domain. Y luego descubrí que el dominio no es el mismo que el dominio del proyecto actual. Así que lo cambié para que sea el mismo que el dominio del proyecto actual. Y luego de eso, el inicio de sesión de administrador funciona.

phagento
fuente
0

Poco después de la instalación de Magento, si se encuentra con los siguientes problemas: a. El administrador no puede iniciar sesión después de una instalación exitosa b. Magento2: Error 404 no encontrado en la página de inicio de sesión de administrador de magento2 después de una instalación exitosa. C. Los enlaces en la página de administración no funcionan.

Realice los siguientes pasos

a. Add the extra code to the **Validator.php** file which you will generally find from below given system path.
     Path: C:\xampp\htdocs\<Your Magento Folder>\vendor\magento\framework\View\Element\Template\File

     /**
     * Checks whether path related to the directory
     *
     * @param string $path
     * @param string|array $directories
     * @return bool
     */
    protected function isPathInDirectories($path, $directories)
    {
        if (!is_array($directories)) {
            $directories = (array)$directories;
        }
        $realPath = $this->fileDriver->getRealPath($path);
        **$realPath = str_replace('\\', '/', $realPath);   <<<====== Extra Code**
        foreach ($directories as $directory) {
            if (0 === strpos($realPath, $directory)) {
                return true;
            }
        }
        return false;
    }

b. This will regenerate all the files
      # php -d memory_limit=1G bin/magento setup:static-content:deploy -f


c. This will flush all the cache from the 2 directories var and generated
      Delete files form the folowing folders
        1. var 
        2. generated

Esto debería solucionar el problema

Allen
fuente