Bảng quản trị Magento 2 bị treo vĩnh viễn cho đến khi làm mới trang


13

Kể từ khi làm việc với Magento 2, tôi liên tục gặp phải vấn đề khó chịu này:

  1. Tôi đăng nhập vào bảng quản trị hoặc chuyển sang một trang khác trong bảng quản trị
  2. Trang bắt đầu tải, đôi khi hiển thị một phần nhưng sau đó bị treo vĩnh viễn (ít nhất là trong vài phút), đôi khi nó hiển thị hoàn toàn nhưng trình duyệt vẫn cho biết "đang tải" và điều hướng không hoạt động, nhưng tôi không thấy thất bại hoặc chạy yêu cầu trong bảng điều khiển trình duyệt.
  3. Nếu tôi nhấn F5trong khi treo, trang sẽ tải gần như ngay lập tức (ít nhất là hầu hết thời gian)

Nó dường như không liên quan đến bất kỳ sự kiện nào, bởi vì tôi có hành vi này ngay cả khi không thực hiện bất kỳ thay đổi nào trong bảng quản trị, cũng như trong mã, chỉ điều hướng. Tuy nhiên, tôi quan sát thấy một mối tương quan có thể với bộ đệm không hợp lệ .

Bất kỳ ý tưởng những gì có thể gây ra vấn đề này? Tôi không tin rằng đó là sự cố điển hình với quyền hoặc cookie vì nói chung bảng điều khiển quản trị hoạt động.

Magento đang chạy trong chế độ nhà phát triển trên Linux.


1
Có cùng một vấn đề, không bao giờ dành thời gian để hỏi, tôi rất vui vì bạn đã làm. Phiên bản PHP nào bạn đang chạy? Tôi đang chạy 5.6. Một cái gì đó và tôi khá chắc chắn rằng nó có liên quan. Nghe nhiều người nói với tôi rằng M2 đã chậm một cách khó tin khi không chạy PHP 7
Raphael tại Digital Pianism

1
PHP 5.5, sẽ rất thú vị nếu biết có ai gặp vấn đề này với PHP 7
Fabian Schmengler

1
Tôi đang sử dụng PHP 7 và gặp phải vấn đề tương tự
Reena Parekh

1
Alan Storm đã đề xuất điều này, có thể liên quan có thể không: magento.stackexchange.com/questions/3720/NH
Raphael tại Digital Pianism

1
Có một số vấn đề với Magento 2.0.4 chạy trên Vagrant (Ubuntu 14.04 / PHP 5.5.9 / MySQL 5.6.28) :(
Siarhey Uchukhlebau

Câu trả lời:


3

CẬP NHẬT

Có vẻ như việc cập nhật Firefox lên 46 đã khắc phục sự cố!

Điều tra ban đầu

Vì tôi cũng đang đối mặt với vấn đề phiền phức này nên tôi quyết định thử.

Cấu hình

  • Máy chủ Ubuntu 12.4
  • PHP 5.5.30
  • MySQL 5.6.27
  • Magento 2.0.4 cài đặt mới mà không cần mẫu
  • Chế độ nhà phát triển bị tắt bộ đệm

Nhân rộng vấn đề

Ngay từ cái nhìn đầu tiên, vấn đề này trông hoàn toàn ngẫu nhiên với tôi. Tuy nhiên, sau nhiều thử nghiệm, tôi đã tìm ra chính xác cách tái tạo vấn đề.

Trình duyệt

Đầu tiên, tôi không thể sao chép sự cố trên Google Chrome, Internet Explorer 11 cũng như Windows Safari 5.2.17 cũ. Tôi chủ yếu sử dụng FireFox (45.0.2) và hiếm khi sử dụng Google Chrome. Ngay cả sau khi tôi đã tìm thấy chính xác cách sao chép sự cố, tôi vẫn chưa thể sao chép trên Chrome.

Tab

Bạn cần mở một vài tab trên FireFox để có thể sao chép vấn đề.

Các bước

  1. Mở bảng quản trị và đăng nhập
  2. Khi bạn đang ở trên bảng điều khiển, bạn có thể nhấp vào bất kỳ mục menu nào. Tôi thường nhấp vào biểu tượng bảng điều khiển một lần nữa
  3. Ngay sau khi bạn nhấp vào mục menu, nhấp vào một trong các tab đã mở của bạn và tiếp tục duyệt internet trong khi bạn chờ bảng quản trị của mình tải xong (dựa trên biểu tượng quay bên cạnh tiêu đề tab)
  4. Thật không may, bạn sẽ không bao giờ tải trang đó.

Cuộc điều tra

Vì vậy, có vẻ như khi khách hàng không tập trung vào tab của Bảng quản trị, Magento 2 dường như không tải tất cả tài nguyên để trang web tải hoàn toàn .

Điều tôi nhận thấy, khi tôi trở lại trang bảng điều khiển tải vô hạn là có rất nhiều tài nguyên đã được tải thành công.

Như Fabian đã nói, không có lỗi trong giao diện điều khiển, không có tài nguyên nào vẫn tải và không có tài nguyên nào không tải được. Tất cả mọi thứ trông giống như trang đã tải xong.

Tuy nhiên, khi tôi nhấp vào nút dừng tải của Firefox (chữ X trong thanh URL), tôi nhận thấy rằng một số tài nguyên đã được thêm vào tab mạng không có ở đây khi trang ở trạng thái tải vô hạn

XIN LƯU Ý: ảnh chụp màn hình bên dưới chỉ dành cho bảng điều khiển, tôi nhận thấy rằng nhiều tài nguyên đã được tải sau khi tôi nhấp vào nút dừng tải trên các trang cấu hình chẳng hạn.

nhập mô tả hình ảnh ở đây

Vì vậy, đối với trang Bảng điều khiển, các tài nguyên đó đã được thêm sau khi tôi nhấp vào nút dừng tải.

Khi trang được tải bình thường, bằng cách không chuyển sang tab khác, các tài nguyên sau được tải sau khi tải DOM (tôi giả sử thông qua AJAX), bạn có thể nhận thấy đường màu xám dày hơn giữa các tài nguyên đó và các tài nguyên ở trên:

nhập mô tả hình ảnh ở đây

Vì vậy, vì một số lý do, các tài nguyên sau được tự động tải khi trang ở trạng thái tải vô hạn nhưng được tải sau khi tải DOM khi trang tải tốt:

  • /static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-popup.html
  • /static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-slide.html
  • /static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-custom.html
  • /static/adminhtml/Magento/backend/en_US/mage/apply/scripts.js

Đó là bao xa tôi đã thực hiện nhiệm vụ sửa lỗi của mình, tôi cho rằng vẫn còn nhiều việc chúng tôi có thể làm để kiểm tra và thu hẹp vấn đề nhưng tôi không có thời gian để thực hiện thêm các bài kiểm tra, tôi sẽ quay lại khi tôi có thời gian.

Điều tra thêm

Vì vậy, tôi đã kết thúc việc cài đặt plugin HTTPFox trên FireFox của mình.

Đây là những gì tôi nhận được khi nhấp vào nút dừng tải sau 1 phút tải (bạn có thể thấy jquery.storageapi.min.jscó 59 giây trong cột thời gian). Các hàng được tô sáng là các tài nguyên được tải sau khi tôi dừng tải:

nhập mô tả hình ảnh ở đây

Tôi đã thử nâng cấp thư viện jquery.storageapi với phiên bản cuối cùng có sẵn trên GitHub nhưng có vẻ như nó không khắc phục được sự cố.

Vì tải favicon tiếp theo trong danh sách, tôi đã nhận xét mã thêm favicon vào đầu nhưng nó cũng không khắc phục được vấn đề.

Tôi đã cố gắng gỡ lỗi domReady.jstập tin vì tên của nó nghe có vẻ như có thể là lỗi nhưng không có cơ hội.

Ngoài ra đây là hai access.logtập tin:

Vẫn không thể hiểu chuyện gì đang xảy ra ở đây.

Cập nhật

Gần đây tôi đã thực hiện hai thay đổi để cài đặt của mình:

  • nâng cấp FireFox lên 46.0
  • nâng cấp từ 2.0.4 lên 2.0.5

Bây giờ tôi không thể tái tạo vấn đề nữa.


1
Bạn đã thử xem có khóa các tệp phiên đồng thời vì các cuộc gọi ajax nền không? Một số tệp js sử dụng dữ liệu từ các cuộc gọi ajax và lưu trữ thông tin trong cookie về nó và đảo ngược. odingexplained.com/coding/php/ cường Tôi có Redis và Memcache trong dev env và vấn đề có vẻ như đã biến mất.
che khuất

@obscure cảm ơn về đầu vào của bạn Tôi sẽ kiểm tra xem ngày mai nhưng tôi rất nghi ngờ vì nó hoạt động khi tôi ở trên tab quản trị và không khi tôi duyệt một tab không Magento khác trong khi tải
Raphael tại Digital Pianism

Có vẻ như bản cập nhật firefox cho đến phiên bản 46 sẽ giúp ích và nó không được kết nối với phiên bản magento. Bạn có thể, xin vui lòng, thêm giải pháp này vào đầu câu trả lời của bạn để nó sẽ hiển thị cùng một lúc.
Siarhey Uchukhlebau

@SiarheyUchukhlebau đã hoàn thành;)
Raphael tại Digital Pianism

1
Dù là gì đi nữa, trong các trình duyệt hiện tại và với các phiên bản Magento mới hơn, điều đó không còn xảy ra nữa, vì vậy tôi sẽ đánh dấu nó là chấp nhận. Cảm ơn một lần nữa cho các cuộc điều tra của bạn.
Fabian Schmengler

0

Tôi hiện đang gặp sự cố chính xác này trên M2.1.2 khi chạy php 7 trên máy chủ NGINX được lưu trữ (2 lõi, 2GB ram) và tôi sử dụng Chrome (54.0.2840.71 m (64-bit)).

Tôi chưa thực hiện bất kỳ thử nghiệm nào để tìm ra nguồn gốc của vấn đề, nhưng vì đây là thiết lập máy chủ mới, ban đầu tôi cho rằng đó là máy chủ của mình. Bây giờ ... không chắc lắm.

Bây giờ, tôi nên đề cập đến việc tôi hiện đang chạy chế độ nhà phát triển và tôi chưa biên dịch mã của mình. Vì vậy, nó có thể chỉ là như vậy.


0

bằng cách nào đó có liên quan khi tôi cập nhật một sản phẩm và thay đổi firefox sang tab mới để điều hướng và trang magento bị mất tập trung, nó ở chế độ chờ cho đến khi quay lại trang magento và sau đó hoàn tất cập nhật của sản phẩm đó, đây là một điều đáng chú ý ... Tôi mở 3-4 sản phẩm và muốn làm việc trên các sản phẩm khác cho đến khi cập nhật xong. biết một giải pháp cho những vấn đề này?

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.