РЕШЕНО - Magento 2 - Неможливо увійти до адміністратора (повідомлення про помилку) застряг на екрані входу


16

Це не питання, а скоріше відповідь на проблему, яка досить стара, але повторювана. Я пам’ятаю, як боровся з цим ще в ті часи, коли я встановлював Magento 1.9, і на цей раз це повторилося на Magento 2.1.4. Я повністю забув про те, як я це тоді виправив, тому на цей раз я документую тут свою відповідь у випадку, якщо комусь це теж потрібно.

Постановка проблеми

В основному ви налаштовували свій магазин Magento 2.1, виконували всі вимоги сервера, додавали SSL, налаштовували веб-сайт, зберігали і переглядали магазин і заповнювали конфігурацію магазину лише для того, щоб зрозуміти, що раптом більше не можете увійти на панель адміністратора. У консолі браузера немає жодних помилок, нічого, а також жодної проблеми з браузером Chrome / Firefox. Ви очистите сеанси і кеш теж безрезультатно. Ви знайшли відповіді, які постійно вказують на сеанси та настройки кешу, але ви дотримувались документації, і вона все ще не працює.


спочатку опублікуйте питання, а потім нижче натисніть відповідь на свою відповідь та додайте їх відповідь.
Qaisar Satti

Зрозумів. Я додав офіційну відповідь внизу відповідно до вашого запиту.
Мубашар Афтаб

Відповіді:


27

Аварійне виправлення

Незалежно від того, чи працює це рішення, спробуйте спочатку ці кроки. Ви зможете увійти, що означає, що ви знаходитесь на правій сторінці. Якщо ви все-таки не змогли увійти в систему, ваша проблема, швидше за все, відрізняється від тієї, яку я публікую, будь ласка, продовжуйте на власний ризик.

  • Перейдіть до своєї бази даних. Якщо у вас є phpMyAdmin, зробіть наступне:
  • Натисніть на свою xxx_core_config_dataтаблицю (xxx_ - додатковий префікс таблиці, який ви могли встановити під час встановлення)
  • Після вибору таблиці натисніть на вкладку "Пошук" праворуч
  • У меню пошуку в розділі "Шлях" виберіть спадне меню до (LIKE% ...%) та введіть "cookie" у поле поруч із ним. Тут буде здійснено пошук усіх рядків таблиці, які містять "cookie" у своєму значенні шляху.
  • Видаліть VALUE з наступного (якщо ви не бачите деяких з них, просто ігноруйте. Можливо, його ще не було налаштовано, тож ви можете пропустити це):
    • web/cookie/cookie_domain
    • web/cookie/cookie_httponly
    • web/cookie/cookie_lifetime
    • web/cookie/cookie_path

Це воно. Тепер оновіть сторінку адміністратора та спробуйте увійти. Це повинно працювати. Якщо це так, тепер давайте перейдемо до суті проблеми.

Питання

Здебільшого, дотримуючись посібника, ми просимо зберігати домен файлу cookie як .domain.com, який очікує субдомен, але ім’я магазину зберігається http://domain.comяк його базова URL-адреса.

Виправлення

Вирішити цю проблему можна двома способами.

Якщо ви не збираєтесь використовувати субдомен для зберігання файлів cookie, ви можете зберегти налаштування домену файлу cookie у магазинах -> конфігурація -> веб -> домен файлів cookie як (domain.com) без попереднього періоду та круглих дужок.

Якщо ви плануєте зробити свій магазин готовим до майбутнього і дозволити зберігання файлів cookie піддоменів, вам слід встановити домен cookie як ( .domain.com) з попереднім періодом і без дужок. Однак у базовій URL-адресі внизу Stores -> Configuration -> Web -> Base URL, додайте wwwдо свого доменного імені, наприклад, http://www.domain.comта httpsзахищеної базової URL-адреси, якщо ви використовуєте SSL (що вам слід).

Крім того, інші налаштування файлів cookie є такими: Cookie Lifetime- 86400 (Наскільки я розумію, вам це не потрібно, і ви можете залишити його порожнім і встановити прапорець "використовувати системне значення", оскільки тепер Magento зберігає сеанс з міркувань безпеки). Cookie Path- / Use HTTP Only- Так Cookie Restriction Mode- Вам залежить. Якщо це ввімкнено, воно відображатиме повідомлення на передньому кінці з проханням згоди користувача зберігати файли cookie.

Примітка. Знову ж таки, це для моїх майбутніх орієнтирів і для тих, хто може натрапити на це розчарування так само, як я.


Врятував мій день! Спасибі! Я підозрював проблеми з налаштуваннями режиму обмеження файлів cookie, які я вніс останній раз, тому справді проблемою виявилося значення домену cookie, встановлене на ".domain.com". Я змінив значення з бази даних web / cookie / cookie_domain на "domain.com" і зміг успішно увійти в область адміністратора.
Івета Аллогенес

1

Швидке виправлення:

Додайте або оновіть записи веб-URL-адрес до https: // захищених URL-адрес для нижче конфігураційних записів у базі даних

У таблиці> core_config_dataвстановіть нижче значення для вашого магазину:

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

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


1

Я пережив це після створення нового проекту, зробленого раніше іншими розробниками. На моєму кінці це я виправив.

У core_config_dataтаблиці я шукав шлях web/cookie/cookie_domain. А потім з’ясував, що домен не збігається з доменом поточного проекту. Тому я просто змінив його на те, що є таким, як поточний домен проекту. А потім після цього працює вхід адміністратора.


0

Незабаром після встановлення Magento, якщо ви стикаєтесь з наведеними нижче проблемами: a. Адміністратор не може увійти після успішної установки b. Magento2: Помилка 404 не знайдена на сторінці входу magento2 адміністратора після успішної установки. c. Посилання на сторінці адміністратора не працюють.

Виконайте наведені нижче дії

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

Це має вирішити проблему

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.