GIẢI QUYẾT - Magento 2 - Không thể đăng nhập vào quản trị viên (không có thông báo lỗi) bị kẹt ở màn hình đăng nhập


15

Đây không phải là một câu hỏi mà là một câu trả lời cho một vấn đề khá cũ nhưng đang tái diễn. Tôi nhớ đã vật lộn với điều này trong những ngày khi tôi thiết lập Magento 1.9 và nó lại xảy ra lần này vào khoảng Magento 2.1.4. Tôi hoàn toàn quên mất cách tôi sửa nó sau đó, vì vậy lần này tôi sẽ ghi lại câu trả lời của mình ở đây trong trường hợp ai đó cũng cần nó.

Báo cáo vấn đề

Về cơ bản, bạn đã thiết lập cửa hàng Magento 2.1, đáp ứng tất cả các yêu cầu máy chủ, thêm SSL, thiết lập Trang web, Cửa hàng và Chế độ xem cửa hàng và chỉ điền vào cấu hình cửa hàng để nhận ra rằng đột nhiên bạn không thể đăng nhập vào bảng quản trị nữa. Không có lỗi, không có gì trong bảng điều khiển trình duyệt, không có bất kỳ vấn đề nào với trình duyệt Chrome / Firefox. Bạn xóa các phiên và bộ nhớ cache cũng không có kết quả. Bạn đã tìm thấy câu trả lời liên tục quay lại các phiên và cài đặt bộ đệm, nhưng bạn đã làm theo tài liệu này và nó vẫn không hoạt động.


đầu tiên gửi câu hỏi sau đó ở bên dưới nhấp vào Trả lời câu trả lời của bạn và thêm câu trả lời của họ.
Qaisar Satti

Hiểu rồi. Tôi đã thêm câu trả lời chính thức ở phía dưới theo yêu cầu của bạn.
Aftab

Câu trả lời:


25

Sửa chữa khẩn cấp

Cho dù giải pháp này có hiệu quả hay không, vui lòng thử các bước sau. Bạn S be có thể đăng nhập có nghĩa là bạn đang ở đúng trang. Nếu bạn vẫn không thể đăng nhập, vấn đề của bạn rất có thể khác với vấn đề tôi đang đăng, vui lòng tự chịu rủi ro.

  • Tới cơ sở dữ liệu của bạn. Nếu bạn có phpMyAdmin, hãy làm như sau:
  • Nhấp vào xxx_core_config_databảng của bạn (xxx_ là tiền tố bảng bổ sung mà bạn có thể đã đặt trong khi cài đặt)
  • Khi bảng được chọn, nhấn tab "tìm kiếm" ở bên phải
  • Trong menu tìm kiếm, bên dưới "đường dẫn", chọn danh sách thả xuống (THÍCH% ...%) và chèn "cookie" vào trường bên cạnh nó. Điều này sẽ tìm kiếm tất cả các hàng trong bảng có chứa "cookie" trong giá trị đường dẫn của chúng.
  • Xóa GIÁ TRỊ của các mục sau (nếu bạn không thấy một số trong số chúng, chỉ cần bỏ qua. Nó có thể chưa được thiết lập, vì vậy bạn có thể bỏ qua nó):
    • web/cookie/cookie_domain
    • web/cookie/cookie_httponly
    • web/cookie/cookie_lifetime
    • web/cookie/cookie_path

Đó là nó. Bây giờ, làm mới trang quản trị của bạn và thử đăng nhập. Nó sẽ hoạt động. Nếu có, bây giờ chúng ta hãy đi vào mấu chốt của vấn đề.

Vấn đề

Hầu hết thời gian, theo hướng dẫn yêu cầu chúng tôi lưu trữ tên miền cookie là .domain.com, nơi đang mong đợi một tên miền phụ, nhưng tên cửa hàng được lưu trữ dưới http://domain.comdạng URL cơ sở.

Sửa chữa

Có hai cách để khắc phục vấn đề này.

Nếu bạn sẽ không sử dụng tên miền phụ để lưu trữ cookie, bạn có thể lưu cài đặt tên miền cookie trong Cửa hàng -> Cấu hình -> Web -> Tên miền cookie dưới dạng (domain.com) mà không có dấu chấm và dấu ngoặc đơn trước đó.

Nếu bạn dự định làm cho cửa hàng của mình sẵn sàng trong tương lai và cho phép lưu trữ cookie tên miền phụ, bạn nên đặt Tên miền Cookie là ( .domain.com) với một khoảng thời gian trước đó và không có dấu ngoặc đơn. Tuy nhiên, trong URL cơ sở của bạn bên dưới Stores -> Configuration -> Web -> Base URL, hãy thêm wwwvào tên miền của bạn như http://www.domain.comhttpstrong URL cơ sở an toàn nếu bạn đang sử dụng SSL (mà bạn nên).

Ngoài ra, các Cài đặt cookie khác cũng như vậy: Cookie Lifetime- 86400 (Theo hiểu biết của tôi, bạn không cần điều này và có thể để trống và kiểm tra "sử dụng giá trị hệ thống" vì hiện tại Magento vẫn giữ phiên vì lý do bảo mật). Cookie Path- / Use HTTP Only- Có Cookie Restriction Mode- Tùy bạn. Nếu bạn bật tính năng này, nó sẽ hiển thị thông báo ở mặt trước yêu cầu sự đồng ý của người dùng để lưu trữ cookie.

Lưu ý: Một lần nữa, cái này là cho mục đích tham khảo trong tương lai của riêng tôi và cho bất kỳ ai có thể vấp phải sự thất vọng này giống như tôi đã làm.


Cứu ngày của tôi! Cảm ơn! Tôi đã nghi ngờ các vấn đề với cài đặt chế độ hạn chế cookie mà tôi đã thực hiện lần trước, vì vậy vấn đề thực sự hóa ra là giá trị miền cookie được đặt thành ".domain.com". Tôi đã thay đổi giá trị từ cơ sở dữ liệu web / cookie / cookie_domain thành "domain.com" và có thể đăng nhập thành công khu vực quản trị.
Iveta Allogenes

1

Khắc phục nhanh:

Thêm hoặc cập nhật các mục Url Web thành https: // url an toàn cho các mục cấu hình bên dưới trong cơ sở dữ liệu

Trong Bảng> core_config_datađặt giá trị bên dưới cho cửa hàng của bạn:

  1. web / không an toàn / base_url => ' https://yoursiteurl.com/ '

  2. web / an toàn / cơ sở_url => ' https://yoursiteurl.com/ '


1

Tôi đã trải nghiệm điều này sau khi thiết lập một dự án mới được thực hiện trước đó bởi các nhà phát triển khác. Cuối cùng, đây là cách tôi sửa lỗi này.

Trong core_config_databảng, tôi tìm kiếm đường dẫn web/cookie/cookie_domain. Và sau đó phát hiện ra rằng tên miền không giống với tên miền của dự án hiện tại. Vì vậy, tôi chỉ thay đổi nó để giống như miền dự án hiện tại. Và sau đó, đăng nhập quản trị viên hoạt động.


0

Ngay sau khi cài đặt Magento, nếu bạn gặp phải các vấn đề dưới đây: a. Quản trị viên không thể đăng nhập sau khi cài đặt thành công b. Magento2: Lỗi 404 không tìm thấy tại trang đăng nhập quản trị viên magento2 sau khi cài đặt thành công. c. Các liên kết trên trang quản trị không hoạt động.

Thực hiện các bước dưới đây

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

Điều này sẽ khắc phục vấn đề

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.